在使用计算属性时,我们难免要进行一些参数的传递,尤其是有v-for的使用时,下面就来介绍一下如何给计算属性传递参数。
//传递要传的参数,这里传的是v-for项目的id值
<p>{
{alonePrice(item.id)}}</p>
//computed:注意不能直接在alonePrice 后面加参数,没效果(应该是vue不支持)应该以JavaScript闭包的形式:
computed: {
//用于单个商品的总价计算
alonePrice () {
return function (id) {
let alonePrice = this.$store.state.commodity;
//定义一个变量,用来接收数据
let s = 0
alonePrice.forEach(item => {
if (item.id == id) {
s = item.price * item.num;
}
})
//注意,在这里一定要将function中的值返回,不然会没有效果
return s
}
}
},