项目结构 Project structure

发现任何默认 Strapi 应用程序的项目结构。

如果使用 starter CLI 创建 Strapi 项目,其结构包括 frontendbackend 文件夹,其中 backend 文件夹具有默认结构。

使用 starter CLI 创建的项目的结构

sh
my-project
├─── frontend # 启动文件夹
├─── backend  # 模板文件夹,具有项目的默认结构
└─── node_modules

在没有启动 CLI 的情况下创建的 Strapi 项目的默认结构取决于该项目是使用原始 JavaScript 还是使用 TypeScript 创建的,如下所示:

bash
基于JS
bash
. # 应用程序的根目录
├──── .strapi # 自动生成的文件夹 - 无需手动更新
     └──── client # 打包器用于呈现应用程序的文件
 index.html
 app.js
├──── .tmp
├──── build # 管理面板的构建
├──── config # API 配置
 api.js
 admin.js
 cron-tasks.js
 database.js
 middlewares.js
 plugins.js
 server.js
├──── database
     └──── migrations
├──── node_modules # 项目使用的 npm 包
├──── public # 外部可访问的文件
     └──── uploads
├──── src
     ├──── admin # 管理员自定义文件
           ├──── extensions # 用于扩展管理面板的文件
 app.js
 webpack.config.js
     ├──── api # 项目的业务逻辑按 API 拆分为子文件夹
     └──── (api-name)
           ├──── content-types
     └──── (content-type-name)
 lifecycles.js
 schema.json
           ├──── controllers
           ├──── middlewares
           ├──── policies
           ├──── routes
           ├──── services
 index.js
     ├──── components
     └──── (category-name)
 (componentA).json
 (componentB).json
     ├──── extensions # 用于扩展已安装插件的文件
     └──── (plugin-to-be-extended)
           ├──── content-types
     └──── (content-type-name)
 schema.json
 strapi-server.js
     ├──── middlewares
     └──── (middleware-name).js
     ├──── plugins # 本地插件文件
     └──── (plugin-name)
           ├──── admin
     └──── src
 index.js
           ├──── server
     ├──── content-types
     ├──── controllers
     └──── policies
 package.json
 strapi-admin.js
 strapi-server.js
     ├─── policies
 index.js # 包括 register()、bootstrap() 和 destroy() 函数
 .env
 package.json