当前位置:首页 > VUE

vue代码规范实现

2026-02-17 12:30:35VUE

Vue 代码规范实现

组件命名规范

组件名采用大驼峰命名法(PascalCase),与文件名保持一致。多单词组合避免与HTML元素冲突。例如:

// 正确
UserProfile.vue
// 避免
userprofile.vue

目录结构规范

按功能模块划分目录,典型结构如下:

src/
├── components/      // 公共组件
├── views/           // 路由级组件
├── store/           // Vuex状态管理
├── router/          // 路由配置
├── assets/          // 静态资源
└── utils/           // 工具函数

单文件组件结构

保持一致的代码顺序:

vue代码规范实现

<template>
  <div class="component-wrapper">
    <!-- 模板内容 -->
  </div>
</template>

<script>
export default {
  name: 'ComponentName',
  props: {},
  data() {
    return {}
  },
  computed: {},
  methods: {}
}
</script>

<style scoped>
.component-wrapper {
  /* 样式规则 */
}
</style>

Props 定义规范

使用对象形式定义props,明确类型和默认值:

props: {
  userId: {
    type: Number,
    required: true
  },
  userName: {
    type: String,
    default: 'Guest'
  }
}

状态管理规范

Vuex模块化组织,避免直接修改state:

vue代码规范实现

// store/modules/user.js
const state = () => ({
  userInfo: null
})

const mutations = {
  SET_USER_INFO(state, payload) {
    state.userInfo = payload
  }
}

const actions = {
  async fetchUser({ commit }, userId) {
    const res = await api.getUser(userId)
    commit('SET_USER_INFO', res.data)
  }
}

代码风格工具

配置ESLint + Prettier保证代码一致性:

// .eslintrc.js
module.exports = {
  extends: [
    'plugin:vue/recommended',
    'eslint:recommended',
    'prettier/vue'
  ],
  rules: {
    'vue/max-attributes-per-line': ['error', {
      singleline: 3,
      multiline: { max: 1 }
    }]
  }
}

性能优化实践

v-for使用key属性,避免v-if与v-for同时使用:

<!-- 正确做法 -->
<ul>
  <li 
    v-for="item in filteredItems"
    :key="item.id"
  >
    {{ item.name }}
  </li>
</ul>

<!-- 避免 -->
<ul>
  <li 
    v-for="item in items"
    v-if="item.active"
    :key="item.id"
  >
    {{ item.name }}
  </li>
</ul>

注释规范

复杂逻辑添加清晰注释:

/
 * 格式化用户余额显示
 * @param {number} amount - 原始金额(分)
 * @returns {string} 格式化后的金额(元)
 */
function formatBalance(amount) {
  return (amount / 100).toFixed(2)
}

标签: 代码vue
分享给朋友:

相关文章

vue datepicker 实现

vue datepicker 实现

实现 Vue Datepicker 的基本方法 在 Vue 项目中实现日期选择功能,可以使用第三方库如 vue-datepicker 或 v-calendar。以下是两种常见实现方式: 安装 vu…

vue实现全景

vue实现全景

Vue 实现全景效果的方法 使用 Vue 实现全景效果通常需要结合第三方库或框架,以下是几种常见的方法: 使用 Three.js 和 Vue-Three.js Three.js 是一个强大的 3D…

vue实现抖动

vue实现抖动

Vue 实现抖动效果 在 Vue 中实现抖动效果可以通过 CSS 动画或 JavaScript 动画库来实现。以下是几种常见的方法: 使用 CSS 动画 通过定义 @keyframes 动画并在 V…

vue实现webapp

vue实现webapp

Vue 实现 WebApp 的基本步骤 环境准备 确保已安装 Node.js 和 npm/yarn。通过 Vue CLI 或 Vite 创建项目: npm install -g @vue/cli v…

vue实现录像

vue实现录像

Vue 实现录像功能 在 Vue 中实现录像功能通常需要借助浏览器的 MediaDevices API 和 MediaRecorder API。以下是实现步骤: 获取用户摄像头和麦克风权限 使用…

vue实现popper

vue实现popper

Vue 实现 Popper 的方法 使用 Tippy.js 库 Tippy.js 是一个轻量级的 Popper.js 封装库,提供丰富的工具提示功能。安装 Tippy.js 及其 Vue 封装: n…