vue 开发规范

简介: vue 开发规范

命名规范

  • 不使用保留字

变量

  • 小驼峰
  • 能描述变量内容
  • 复数加s
// 我的app名称为'朝阳的百宝箱'
let myAppName = '朝阳的百宝箱'
// 我的书籍有《卓有成效的管理者》、《牧羊少年奇幻之旅》
let myBooks = [‘《卓有成效的管理者》’,‘《牧羊少年奇幻之旅》’]

常量

  • 全大写
  • _分隔单词
const MAX_NUM = 100

组件

  • 首字母大写
  • -分隔
在这里插入代码片

方法

  • 小驼峰
  • 动词,动词+名词
  • 操作数据相关的方法以data结尾
getListData(){}
 
// 常用动词
get 获取/查询
set 设置
add 增加
del 删除
clear 清除
edit 修改
save 保存
submit 提交
publish 发布
begin 开始
end 结束
start 开始
stop 停止
bind 绑定
copy 复制
select/choose 选取/选择
mark 标记
find 查找
play 播放
pause 暂停
increase 增加
decrease 减少
init 初始化
build 构建
input 输入
output 输出
encode 编码
decode 解码
pack 打包
unpack 解包
parse 解析
connect 连接
disconnect 断开连接
send 发送
receive 接收
upload 上传
download 下载
refresh 刷新
lock 锁定
unlock 解锁
expand 展开
collapse 折叠
finish 完成
enter 进入
exit 退出

views下的文件名

  • 用模块名开头
// 博客列表
blogList.vue
// 博客表单
blogForm.vue
// 博客详情
blogDetail.vue

模块输出

  • 输出一个函数时,首字母小写
export default getList
  • 输出一个对象时,首字母大写
let User = {
   name:'朝阳',
   say:()=>{},
   jump:()=>{},
}
export default User

目录规范

src 外目录规范

  • router 路由
  • store 跨组件数据共享vuex

src 内目录规范

  • assets 静态资源
  • icons 图标
  • css 公共样式
  • components 公共组件
  • datas 模拟数据(接口联调后删除)
  • mock 模拟接口(接口联调后删除)
  • views 业务模块/页面代码
  • blog 模块名
  • blogIndex.vue 博客首页
  • components 模块内的组件
  • pages 模块内的页面
  • blogForm.vue 博客表单
  • blogDetail.vue 博客详情

选项规范

vue 选项推荐的顺序如下:

  • mixin
  • components
  • props
// 需声明传入的变量名,数据类型,是否必传,有效性校验
props:{
  title :{
  type:String,
  required:true,
  validator:(value)=>{
      return ['圣诞节','春节','元旦'].indexOf(value)!== -1
  }
  } 
}
  • data
  • computed
  • watch
  • methods
  • filters
  • created
  • mounted
  • destroyed

注释规范

需添加注释的内容

  • 公共组件使用说明
  • 重要函数/方法
  • 复杂的业务逻辑
  • 特殊情况的代码说明

公共组件/函数

/**
* 使用场景/功能 :展示系统 logo
* 参数说明  
* -- src 系统logo的图片路径
* -- name 系统名称
* 调用示例
* <logo  :src='src' :name='name'   />
*/

赋值规范

数组的解构赋值

// 取出数组中的前两项
let [first,second] = [1,2,3,4]

用扩展运算符…拷贝数组

let list_copy = [...this.list]

函数参数的解构赋值

fuction getFullName(user){
   const [firstName,lastName] = user 
}

目录
相关文章
|
16天前
|
JavaScript
Vue中如何实现兄弟组件之间的通信
在Vue中,兄弟组件可通过父组件中转、事件总线、Vuex/Pinia或provide/inject实现通信。小型项目推荐父组件中转或事件总线,大型项目建议使用Pinia等状态管理工具,确保数据流清晰可控,避免内存泄漏。
137 2
|
4月前
|
人工智能 JavaScript 算法
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
575 0
|
6月前
|
JavaScript
vue实现任务周期cron表达式选择组件
vue实现任务周期cron表达式选择组件
773 4
|
4月前
|
JavaScript UED
用组件懒加载优化Vue应用性能
用组件懒加载优化Vue应用性能
|
5月前
|
JavaScript 数据可视化 前端开发
基于 Vue 与 D3 的可拖拽拓扑图技术方案及应用案例解析
本文介绍了基于Vue和D3实现可拖拽拓扑图的技术方案与应用实例。通过Vue构建用户界面和交互逻辑,结合D3强大的数据可视化能力,实现了力导向布局、节点拖拽、交互事件等功能。文章详细讲解了数据模型设计、拖拽功能实现、组件封装及高级扩展(如节点类型定制、连接样式优化等),并提供了性能优化方案以应对大数据量场景。最终,展示了基础网络拓扑、实时更新拓扑等应用实例,为开发者提供了一套完整的实现思路和实践经验。
549 77
|
3月前
|
JavaScript 安全
在 Vue 中,如何在回调函数中正确使用 this?
在 Vue 中,如何在回调函数中正确使用 this?
112 0
|
3月前
|
人工智能 JSON JavaScript
VTJ.PRO 首发 MasterGo 设计智能识别引擎,秒级生成 Vue 代码
VTJ.PRO发布「AI MasterGo设计稿识别引擎」,成为全球首个支持解析MasterGo原生JSON文件并自动生成Vue组件的AI工具。通过双引擎架构,实现设计到代码全流程自动化,效率提升300%,助力企业降本增效,引领“设计即生产”新时代。
246 1
|
6月前
|
缓存 JavaScript 前端开发
Vue 基础语法介绍
Vue 基础语法介绍
|
4月前
|
JavaScript 前端开发 开发者
Vue 自定义进度条组件封装及使用方法详解
这是一篇关于自定义进度条组件的使用指南和开发文档。文章详细介绍了如何在Vue项目中引入、注册并使用该组件,包括基础与高级示例。组件支持分段配置(如颜色、文本)、动画效果及超出进度提示等功能。同时提供了完整的代码实现,支持全局注册,并提出了优化建议,如主题支持、响应式设计等,帮助开发者更灵活地集成和定制进度条组件。资源链接已提供,适合前端开发者参考学习。
377 17