我正在使用BootstrapVue。我的问题是:模板中有一个
我认为我必须使用
v-for
,其中有两个buttons
。在循环v-for
时,v-if
不会生成唯一的IDs
,然后点击一个按钮将触发每个按钮(从Open me!
到Close me!
反之亦然)。。 我该如何使每个按钮只触发自己而不影响其他按钮?我认为我必须使用
v-for
中的n
,但我实际上不知道如何将其绑定到v-if
。谢谢!<template>
<div>
<div v-for="n in inputs" :key="n.id">
<b-button v-if="hide" @click="open()">Open me!</b-button>
<b-button v-if="!hide" @click="close()">Close me! </b-button>
</div>
<div>
<b-button @click="addInput">Add Input</b-button>
</div>
</div>
</template>
<script>
export default {
data() {
return {
id: null,
inputs: [{
id: 0
}],
hide: true,
};
},
methods: {
open() {
this.hide = false
},
close() {
this.hide = true
},
addInput() {
this.inputs.push({
id: this.id += 1;
})
}
}
};
</script>
v-for
,并且我有唯一的ID,因此v-for="(array, index) in json"
,对于这个array
,我正在生成唯一的ID!但是,在循环结束后,我的v-if
将为每个按钮触发。 - patrick96