Vue2.x项目规范(自研)

387 阅读2分钟

前言:项目基于vue-cli脚手架搭建,适合自身的一套规范

1.项目目录结构规范(有参考vue-element-admin)

这里直接进入src文件里面

api-->axios二次封装,分模块细化接口
assets-->静态资源,图片等
components-->公共组件
directives-->全局自定义指令filters-->公共格式化处理filtericons-->通用图标svg
mixins-->通用mixins,如表格高度自适应
router-->全局路由
store-->状态管理vuex
style-->公共样式,自定义主题覆盖
utils-->工具函数
views-->路由页面
  element.import.js-->按需加载组件,公共组件注册
  main.js-->入口文件
  permission.js-->路由权限处理,路由守卫
  settings.js-->全局设置,如站点名称

2.文件命名规范(除基本目录之外)

  • 文件夹命名:xxx-xxx

  • 文件命名:xxx.js

  • 单文件组件命名:页面单组件驼峰双大写,公共组件可以将命名赋予外文件夹,里面用index.vue代替

  • 路由页面命名:index.vue

3.单文件组件结构

生命周期按顺序连在一起就行,methods放最后

<template>  
  <div></div>
</template>
<script>
export default {  
  props: {},  
  mixins: [],  
  components: [],  
  data() {    
    return {};  
  },  
  computed: {},  
  watch: {},  
  mounted(){},  
  methods: {},
};
</script>
<style scoped></style>

4.Vue文件书写规范 (按结构顺序)

  • for循环key值使用唯一id,动态数据不要使用index作为id
  • 模板里面{{}}里面不适合过多复杂数据处理,如果需要使用函数或者计算属性处理返回值
  • 元素里面有多个属性换行书写,为了观赏性(???别整这虚的)
  • props每个数据都应定义为一个对象,指定类型与默认值 
  • mixins大写驼峰 data应为函数,返回响应式数据都以驼峰命名为规范 
  • computed,watch,methods命名与data一致 
  • 点击事件命名handleXxx ,回调方法使用箭头函数,规避this指向问题
  • 常量命名全大写 const START_TIME=‘xxx’,变量定义用let

5.组件传值

  • 普通类型驼峰
  • 方法监听@on-xxx=""

暂时先这么多了,欢迎补充

附上Vue官方关于项目风格的网址:

cn.vuejs.org/v2/style-gu…

未完待续...