vue代码开发技巧或者规范

1、v-for中使用:key

在操作列表渲染时,把:key属性与v-for一起使用,可以使vue对组件状态进行跟踪。
使用唯一的识别符,diff算法能更高效的更新DOM。

2、v-for和v-if尽量避免在同一元素上使用

在列表渲染时常遇到元素的筛选,这时就会自然而然的把v-for和v-if结合在一起
进行使用。但是,在使用时会发现有时只需要一个或者几个元素的值,而要去
遍历整个列表。这样就做了好多无用功。
遇到这种情况不妨使用computed,直接将满足条件的元素筛选出来。

<div v-for='item in newData'>筛选后的:{{item.name}}</div>
data () {
    return {
      oldData: [
        {
          id: 1,
          name: 111
        },
        {
          id: 2,
          name: 222
        },
        {
          id: 3,
          name: 333
        }
      ]
   }
}
computed: {
    // newData: function () {
    // return this.oldData.filter(function (product) {
    newData: (vm) => {
      return vm.oldData.filter(function (product) {
        return product.id > 2
      })
    }
}
3、指令简写
@ 是 v-on的简写
: 是 v-bind 的简写
# 是 v-slot 的简写
4、组件模板props、事件问题

模板使用使用短横线‘-’命名props、添加事件监听。在模板中,则要使用驼峰来生命。
为什么要这样生命呢?
以为在js中使用驼峰声明是标准,在HTML中使用短横线生命是标准。如果使用模板时,使用了
驼峰格式,那么在vue中则会把驼峰转换为短横线式的命名方式。

// props
props: {
	detailData: {
		type: Array 
	}
}
// 模板使用
<sub-tem @btn-click='clickFn' detail-data='data'></sub-tem>
5、正确定义props、校验props

props是用来接收来自父组件的数据。是单向数据流中重要的一环。
定义时props的类型是必须的生命的。可以是String,Array、Objec也可以是Datet等原生构造函数的一种。
使用validator函数对定义的props进行校验。

props: {
	detailData: {
      type: Array,
      default: [1, 2],
      required: true,
      validator: function (value) {
      		// 若校验失败,控制台会有警告(开发环境)
      		return value.length > 2
      }
    }
}
6、不要在created、watch中直接调用方法

在created阶段调用方法的需求无非是希望组件是实例完成后立即调用的。
其实这种情况可以在 watch中实现。

具体使用查看:https://blog.csdn.net/jiuwanli666/article/details/104769467

7、单实例组件命名

单实例组件每个 页面使用一次,且不接受任何的props。
在定义时名称前面添加’The’来进行区别。

TheHeader.vue
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值