1.我们通常使用计算属性,是不带参数的,如
computed: {
getInitVal:function(){
return rst
}
},
2.带参数的计算属性
computed: {
getInitVal(){
return function(key_){
return rst
}
},
},
总结:若计算属性在本组内内使用,正常使用即可。
3.特别注意的是,父组件的计算属性传递给子组件时,父组件的任意点击事件,都会重新计算计算属性, 从而 影响子组件, 要在子组件watch监听这个计算属性做判断
在父组件中,unitInitVal 通过计算属性得到
<pos-text
:unitInitVal="getInitVal(item.key)"
/>
computed: {
getInitVal(){
return function(key_){
let rst = {}
//doing
return rst
}
},
},
在子组件中 watch 监听
props: {
unitInitVal: {
type: Object,
default(){
return {}
}
},
}
watch: {
unitInitVal: {
handler(newData, oldData) {
if(Object.keys(newData).length===0 && Object.keys(oldData).length===0) {
//啥都不做
}
else{
this.init()
}
},
deep: true
},
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。