Javascript 手风琴加减图标不变

Javascript 手风琴加减图标不变,javascript,vue.js,bootstrap-4,Javascript,Vue.js,Bootstrap 4,我有这个手风琴和一个折叠(作为一个组件,因为我需要循环它)。代码如下: 手风琴 崩溃 {{each.question}} {{each.answer} 导出默认值{ 道具:[“每个”], 数据(){ 返回{ isActive:错误 } } } 除了图标外,手风琴工作正常。手风琴一次只显示一个(展开的)折叠。每当我单击另一个折叠时,上一个折叠将关闭,但图标不会更改(因为我没有单击它)。如何在折叠关闭时自动更改图标?您的数据定义与方法类似,请尝试以更清晰的方式执行: { data:

我有这个手风琴和一个折叠(作为一个组件,因为我需要循环它)。代码如下:

手风琴


崩溃


{{each.question}}
{{each.answer}
导出默认值{
道具:[“每个”],
数据(){
返回{
isActive:错误
}
}
}

除了图标外,手风琴工作正常。手风琴一次只显示一个(展开的)折叠。每当我单击另一个折叠时,上一个折叠将关闭,但图标不会更改(因为我没有单击它)。如何在折叠关闭时自动更改图标?

您的数据定义与方法类似,请尝试以更清晰的方式执行:

{
    data: () => ({
        isActive: false
    })
}

b-collapse
事件包括,当组件状态更改时发出。因此,您可以使用(或)在相应地设置
isActive
标志的模板中绑定事件侦听器:


然后可以删除按钮单击处理程序,因为上面的事件绑定已经处理了它


问题中的语法是正确的,因为OP使用的是SFC文件。@kissu该语法可能会导致上下文问题,这可能会导致类似的错误,严格遵循官方文档语法比采用更奇特的方式同时丢失
要好。我试过了,也遇到了一些棘手的问题。Ofc这取决于你想做什么,但这里是处理一些数据的常用方法,没有什么特别之处@基苏:功能和方法是不同的。函数将有自己的上下文,但方法将使用对象上下文。不确定为什么仍建议使用方法语法。