├─ config //webpack 相关配置 ├─ public // html(页面容器),ico 等 ├─ src // 项目文件夹 │ ├─ _ _test _ _ // 测试 │ ├─ common // 公共 css js 图片样式 │ │ ├─ assets //css 图片 │ │ └─ js // js 文件 │ ├─ components // 公共组件库 │ ├─ hooks // 公共 hooks 方法 │ ├─ layout // 项目主框架 导航栏等 │ ├─ mocks // mock 数据 │ ├─ pages | | |─ Index //一级模块 │ │ │ │─ common // 公共 css js 图片样式 │ │ │ | │─ assets //css 图片 │ │ │ | └─ js // js │ │ │ ├─ components // 界面组件 │ │ │ ├─ modules // 界面模块 │ │ │ ├─ childrenPage // 二级模块 │ │ │ │─ constants // 页面常量 │ │ │ |─ hooks // hooks │ │ │ │─ reducers // 状态管理 │ │ │ └─ types // 数据类型统一定义 │ ├─ redux // redux 入口 │ ├─ router // 路由 │ ├─ types // 公共 types │ ├─ utils // 工具函数 网络请求封装等 │ └─ index.jsx // 入口
.editorconfig 定义规则配置,来避免常见的代码格式不一致和丑陋的 diffs。 EditorConfig: 跨编辑器和 IDE 编写代码,保持一致的简单编码风格; Prettier: 专注于代码格式化的工具,美化代码; ESLint:作代码质量检测、编码风格约束等;
├─ .cz-config.js
├─ .editorconfig
├─ .eslintignore
├─ .eslintrc.js
├─ .gitignore
├─ .jscpd.json
├─ .prettierignore
├─ .prettierrc.js
├─ .travis.yml
├─ README.md
├─ babel.config.js
├─ commitlint.config.js
├─ config
│ ├─ config.js
│ ├─ getLocalIp.js
│ ├─ styles.js
│ ├─ typescriptFormatter.js
│ ├─ webpack.config.common.js
│ ├─ webpack.config.dev.js
│ └─ webpack.config.prod.js
├─ dist
├─ jestconfig.js
├─ jsconfig.json
├─ package.json
├─ postcss.config.js
├─ public
│ ├─ ico.ico
│ └─ index.html
├─ src
│ ├─ __tests__
│ │ └─ setup.js
│ ├─ common
│ │ ├─ assets
│ │ └─ js
│ ├─ components
│ ├─ hooks
│ ├─ index.tsx
│ ├─ layout
│ │ ├─ Children.tsx
│ │ ├─ Demo.tsx
│ │ ├─ commen
│ │ ├─ index.tsx
│ │ └─ typings
│ ├─ mock
│ │ └─ mockApi.js
│ ├─ pages
│ │ ├─ 404
│ │ │ └─ index.tsx
│ │ ├─ Index
│ │ │ ├─ common
│ │ │ │ └─ assets
│ │ │ │ └─ styles
│ │ │ └─ index.tsx
│ ├─ routes
│ │ ├─ asyncCom.tsx
│ │ ├─ index.tsx
│ │ └─ routerConfigs.tsx
│ ├─ store
│ │ ├─ index.ts
│ │ └─ reducer.ts
│ ├─ typings
│ │ └─ index.d.ts
│ └─ utils
│ ├─ echartsConfig.ts
│ ├─ request
│ │ ├─ BaseRequest.ts
│ │ ├─ BaseSubFormRequest.ts
│ │ └─ BaseSubJsonRequest.ts
│ ├─ styles.ts
│ └─ utils.ts
└─ tsconfig.json
npx husky install npx husky add .husky/commit-msg 'npx --no-install commitlint --edit "$1"' npx husky add .husky/pre-commit "npm run test:unit"