Vue小知识点

其实是个人Vue盲点的查漏补缺_(:з」∠)_,,,很多点官方文档里都有,Vue文档要字斟句酌啊。本来想叫“Vue最佳实践”的,,老脸一红,算了,算了

 

Prop

1、Prop如果为数组或对象类型,default值必须从函数中返回。这是为了保证不同component实例中propB都是独立的实例。

props: {
    propA: {
        type: Number,
        default: 100
    },
    propB: {
        type: Object,
        default: function () {
            return { a: 1 };
        }
    }
}

 2、非prop特性使用$attrs传递。传递给组件的属性,如果没有相应的prop定义,则该属性会放在$attrs中,常见的是基于html元素构建的基础组件,元素的原生属性可通过$attrs传递。

// 实际问题是对el-input再封装时,要透传原有属性,但发现placeholder,rows等属性并未生效
// 是因为这些原生属性在$attrs里,透传要兼顾$props和$attrs

<el-input v-bind="finalProps"></el-input>

computed: {
    finalProps () {
        const {$props, $attrs} = this;
        return {...$props, ...$attrs};
    }
}

写代码写着写着觉得背后一股凉意,转头,小哥一脸严肃,“来,往上翻,XXX行...嗯,这里不要这么写,要这样....”,然后,帅气的走掉了。。受教了_(:з」∠)_

攒了好多的,慢慢写,,,

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值