我们就爱程序媛前端技术Web前端之路

vue 编码规范

2017-10-17  本文已影响173人  叶赫icon

vue 编码规范

1.数据渲染:

渲染数据时,必须使用“Mustache”语法 (双大括号),否则无法在页面显示

<span>{{ msg }}</span>

2.组件命名:

3.紧密耦合的组件名:

如果一个组件只在某个父组件的场景下有意义,这层关系应该体现在其名字上。因为编辑器通常会按字母顺序组织文件,所以这样做可以把相关联的文件排在一起。

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

4.组件引入规则:

组件引入应以变量Loading形式,而不是字符串"Loading"形式

import Loading from 'components/loading';  

5.尽量使用缩写:

比如使用 :style 代替 v-bind:style;用 @click 代替 v-on:click

6.不要将 html 的 attribute 和 vue 的 model 混用:

img、a标签等如需添加动态属性,应用 :src=" " / :href=" " ,而不是用 src={{}}。

正确使用方法如下:

![](baseUrl + item.cover) 
<a :href="baseUrl + item.id" />   

注:路由 to 属性如是动态数据,也需用v-bind 绑定

<li class="nav-item" v-for="(item,index) in routeArr">
    <router-link  :to='item.url' :key="item.id">{{item.name}}</router-link>
 </li>

7.data属性:

在组件中,data值必须是函数 (因为组件可能被多次调用,当data为普通对象时,data内的数据会被共享,为函数时,则每个组件生成为独立data作用域")

export default {
    data () { 
      return {
        foo: 'bar'
      }
  }
} 

8.method方法命名:

9.vue方法一般放置顺序:

例如:

 export default{
      components:{
        
      },
      props:[],
      data(){
        return { 
        
        }
     },
     computed:{ 

     }
     methods:{

     },
     mounted:{
    
    }
 }

10.为v-for设置键值:

当使用v-for渲染列表时, 需要对应的key值,以维护内部组件及其子树的状态

<li v-for="todo in todos" :key="todo.id">{{ todo.text }}</li> 

11.为组件样式设置作用域:

为避免不同组件之间css样式冲突,需在style标签中设置作用域;

设置作用域可使用scoped,也可通过CSS Modules(CSS Modules是一种技术流的组织css代码的策略,它是依靠动态生成class名这一手段为css提供默认的局部作用域。)

<style scoped>
    .button {
      border: none;
      border-radius: 2px;
    }
</style>  

<style module>
    .button {
      border: none;
      border-radius: 2px;
    }
</style>  

12. < template >< /template >标签注意点:

组件中< template > < /template > 标签内只能有一个根元素

<template>
    <div class="wrap"> 
        content.....
    </div>
</template>
上一篇 下一篇

猜你喜欢

热点阅读