【发布时间】:2018-12-15 18:43:12
【问题描述】:
我试图在 Vue.js(我最近才开始学习)中切换一个元素的类(被点击的按钮的父级)。
这个想法是disabled 类将在included 为不为真时应用。
我创建了一个 toggleClass 函数,但它似乎没有被调用。
https://codepen.io/dagford/pen/NzQrJM
HTML
<div id="app">
<div class="item" v-for="item in items" :id="item.id" :key="item.id">
<span>{{item.amt}}</span>
<button v-on:click="item.included = !item.included" v-on:click="toggleClass()">exclude me</buton>
</div>
<br>
<div id="total">total: {{ itemTotal }}</div>
</div>
VUE
var app = new Vue({
el: "#app",
data: {
items: [
{
id: 'item1',
included: 'true',
amt: 10,
className: 'disabled'
},
{
id: 'item2',
included: 'true',
amt: 20,
className: 'disabled'
},
{
id: 'item3',
included: 'true',
amt: 30,
className: 'disabled'
}
]
},
methods: {
toggleClass: function () {
if(this.included) {
console.log('test');
// code to toggle the 'disabled' class here?
}
}
},
computed: {
itemTotal() {
return this.items.reduce(function (sum, item) {
if (item.included) {
return item.amt + sum;
}
return sum;
}, 0)
}
}
});
【问题讨论】:
-
谢谢伯特,但不……那不是我想要的。我希望按钮始终可以切换。它只是我将灰显的值本身 - 这就是为什么我希望在“项目”Div 上禁用禁用类(所以我可以使用 CSS 将值灰显)
-
是的,正确的@Bert! :)
标签: vue.js