项目结构规范

文件夹结构

避免多层嵌套
不要过度思考
参考React书里的建议:
采用混合方式划分文件结构

  • 采用类型划分的优势
  • 添加功能划分的特点
    src/
    |----app.js // 整个应用的入口
    |----app.css
    |----views  // 应用中某个路由的文件 一般为路由组件
    |    |----Home.js
    |    |----Home.css
    |    |----HomeRedux.js // home页面中所有与redux相关的汇总
    |----components // 所有应用的组件
    |    |----Home // 在view中有一个名为Home的view 在这就有一个名为Home的子文件夹
    |    |    |----Table.js // home中的一个列表组件
    |    |    |----Table.css
    |    |    |----TableRedux.js
    |    |    |----Table // 另一种方式 如果组件很多 文件夹打开会很长
    |    |    |    |----Index.js
    |    |    |    |----Index.css
    |    |    |    |----IndexRedux.js
    |    |----shared // 不归属于任何view的组件 比如公共组件
    |----container
    |    |----DevTool.js // 配置DevTool
    |    |----Root.js // 一般被app.js依赖
    |----layout // 布局相关的组件 如菜单 侧边栏
    |----redux
    |    |----reducers.js // 
    |----routes // 路由相关的配置
    |----utils // 工具函数常量等
    |----styles // 全局公共样式
    

单文件组件文件的大小写

单文件组件的文件名应该要么始终是单词大写开头 (PascalCase),要么始终是横线连接 (kebab-case)。
单词大写开头对于代码编辑器的自动补全最为友好,因为这使得我们在 JS(X) 和模板中引用组件的方式尽可能的一致。然而,混用文件命名方式有的时候会导致大小写不敏感的文件系统的问题,这也是横线连接命名同样完全可取的原因。

components
|---- MyComponent.vue

或者

components
|---- my-component.vue

基础组件命名

应用特定样式和约定的基础组件 (也就是展示类的、无逻辑的或无状态的组件) 应该全部以一个特定的前缀开头,比如 Base、App 或 V

components
|---- BaseButton.vue
|---- BaseTable.vue
|---- BaseIcon.vue

components
|---- AppButton.vue
|---- AppTable.vue
|---- AppIcon.vue

components
|---- VButton.vue
|---- VTable.vue
|---- VIcon.vue

单例组件命名

只应该拥有单个活跃实例的组件应该以 The 前缀命名,以示其唯一性。

components
|---- TheHeading.vue
|---- TheSidebar.vue

紧密耦合的组件名

components
|---- TodoList.vue
|---- TodoListItem.vue
|---- TodoListItemButton.vue

组件名的单词顺序

组件名应该以高级别的 (通常是一般化描述的) 单词开头,以描述性的修饰词结尾。

components
|---- ClearSearchButton.vue
|---- ExcludeFromSearchInput.vue
|---- LaunchOnStartupCheckbox.vue
|---- RunSearchButton.vue
|---- SearchInput.vue
|---- TermsCheckbox.vue
components
|---- SearchButtonClear.vue
|---- SearchButtonRun.vue
|---- SearchInputExcludeGlob.vue
|---- SearchInputQuery.vue
|---- SettingsCheckboxLaunchOnStartup.vue
|---- SettingsCheckboxTerms.vue

模版中的组件名大小写

对于绝大多数项目来说,在单文件组件和字符串模板中组件名应该总是 PascalCase 的——但是在 DOM 模板中总是 kebab-case 的。

Copyright © imooc-lego (2020 - present) all right reserved,powered by GitbookFile Modify: 2021-06-27 08:04:56

results matching ""

    No results matching ""