我有一个组件,它将具有名为 isVendorOrAgent
的数据,该数据应基于组件获取的属性 false
或 true
. 当我把这个条件放在组件的数据部分时,它不起作用并且总是返回 false
但是当我把它放在 created()
并更改 created()
中的 isVendorOrAgent
时,它可以工作 .
我怎样才能做到这一点?
这是不起作用的条件:
data : () => {
return {
isVendorOrAgent : (this.entityName == "vendor" || this.entityName == "agent") ? true : false;
}
}
但这在默认值为false时有效:
created(){
if(this.entityName == "vendor" || this.entityName == "agent"){
this.isVendorOrAgent = true;
}
}
1 回答
试试这个代码示例:
有什么不同吗?
现在
data
不是箭头函数,因为箭头函数不会改变上下文,所以this
将不会是组件内部的内容我们现在存储
Boolean
值我们现在正在使用严格的平等
===
,这只是一个好习惯您还可以查看
computed
属性:https://vuejs.org/v2/guide/computed.html您的问题可以像这样解决:
如果您需要此属性进行反应,则第二种方式更可取 .