假设我们有一个具有isOpen属性的组件answer。默认情况下,isOpen为false,当用户单击answer时,我们将isOpen更改为true。
我们正在显示答案列表。当用户单击第二个answer时,我们如何关闭第一个answer
我在考虑用globalIsOpen = false创建一个服务answersSync。
发布于 2021-11-22 16:37:30
我建议跟踪在您的父组件中打开的答案,即列出答案的组件。然后,您的父模板将如下所示:
{{#each this.answers as |answer|}}
<Answer
@answer={{answer}}
isOpen={{eq this.currentlyOpenAnswer answer}}
{{on "click" (fn this.openAnswer answer)}}
/>
{{/each}}(然后在父组件的js中编写代码,跟踪currentlyOpenAnswer,响应openAnswer操作)
https://stackoverflow.com/questions/70065083
复制相似问题