['btn-' + this.size] : this.size !== '',
['btn-disabled'] : this.disabled
变量什么的不重要,主要是这里面中括号与冒号的使用问题,看不懂这里面的逻辑
有冒号肯定是在对象字面量中,分隔属性名和属性值,如
var obj = {
['btn-' + this.size] : this.size !== '',
['btn-disabled'] : this.disabled
};
[]方括号是es6的新语法,先拼接[]中字符串,然后将其作为对象的属性名,等同:obj['btn-' + this.size] = (this.size !== '')
这个按钮应该是数组吧,应该是动态生成的,这个是对数组最后新建的按钮设置状态。
实际上就是字符传拼接加判断
['btn-' + this.size] : this.size !== '', // 比如this.size=5则结果为btn-5:true或者false,this.size !== '' this.size不等于空就为true否则为false
['btn-disabled'] : this.disabled //btn-disables:this.disabled
中括号里面的 ,拼接字符串啊,作为一个键名,
冒号后面的是表达式,结果是一个布尔值,作为键值,
就是一个键值对,很难理解?
您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!
速戳参与调研>>>https://t.csdnimg.cn/Kf0y