目录结构

icejs 的默认应用目录架构提供了良好的代码分层结构,适用于开发或大或小的应用,约定的目录结构如下:

  1. ├── .ice/ # 运行时生成的临时目录
  2. ├── build/ # 构建产物目录
  3. ├── mock/ # 本地模拟数据
  4. ├── index.js
  5. ├── public/
  6. ├── index.html # 应用入口 HTML
  7. └── favicon.png # Favicon
  8. ├── src/ # 源码
  9. ├── components/ # 自定义业务组件
  10. ├── layouts/ # 布局组件
  11. ├── pages/ # 页面
  12. ├── models/ # 应用级数据状态
  13. ├── global.scss # 全局样式
  14. ├── config.ts # 环境配置
  15. ├── routes.ts # 路由配置
  16. └── app.ts # 应用入口
  17. ├── build.json
  18. ├── package.json
  19. └── tsconfig.json

.ice/

运行 icejs 项目时默认生成的临时目录,该目录不需要进行 git 提交。

build/

运行 npm run build 后的构建产物目录。

mock/

本地模拟数据的目录。详见

public/

静态资源目录,默认包含 index.htmlfavicon.png

src/

源码目录

components/

项目通用的组件目录,推荐的目录形式如下:

  1. Guide/
  2. ├── index.tsx
  3. ├── index.module.scss
  4. └── __tests__ # 就近测试用例

layouts/

项目的布局文件目录,布局通常包含导航配置,布局组件,样式三部分,推荐的目录形式如下:

  1. BasicLayout/
  2. ├── menuConfig.ts # 布局对应的菜单配置
  3. ├── index.tsx
  4. └── index.module.scss

models/

项目的全局数据模型目录,通常包含多个 model 文件,推荐的目录形式如下。详见

  1. models/
  2. ├── foo.ts
  3. └── bar.ts

pages/

项目的页面文件目录,页面通常包含数据模型,页面组件、样式三部分,推荐的目录形式如下。

  1. Home/ # Home 页面
  2. ├── model.ts # 页面级数据状态
  3. ├── index.tsx # 页面入口
  4. └── index.module.scss # 页面样式文件

app.ts

项目的入口文件,用于对应用进行全局配置,包括路由、运行环境、请求、日志等。详见

config.ts

项目的环境配置,用于根据不同环境进行区分配置。详见

global.scss

全局的样式配置,框架默认会引入该文件。详见

routes.ts

应用的路由配置文件。详见

build.json

应用的工程配置文件。详见

package.json

应用所需要的各种模块,以及配置信息(比如名称、版本、许可证等元数据)。

tsconfig.json

TypeScript 编译所需的配置文件。