【发布时间】:2018-08-31 20:18:08
【问题描述】:
我正在构建一个需要对多个 bootstrap-vue 模态进行排序的应用程序。具体来说,嵌套组件中的按钮应打开“管理”模式。 “管理”模式包含按钮,单击时应关闭“管理”模式并打开另一个模式(例如“编辑”、“添加”、“完成”等)。
我希望在我的商店中有一个值this.$store.state.general.activeModal,而不是向上和向下传递道具/发射事件以便可以从不同的嵌套组件触发这些值,它决定显示哪个模式(如果有)
问题:如何在我的应用主页面中创建一组模式,以在状态值发生更改时呈现?
我的主应用将如下所示:
<template>
<app-stuff />
<b-modal id="modal1" />
<b-modal id="modal2" />
<b-modal id="modal3" />
</template>
例如modal1 应该在 this.$store.state.general.activeModal 设置为 'modal1' 时显示,并在值更改为其他值时关闭。
我尝试创建一个计算变量“showModal1”,当store.etc.activeModal=='modal1' 时为真,否则为假,然后使用v-modal="showModal1" 显示/隐藏模态,但每次值时它都会创建模态的两个副本在商店中匹配(显然计算值在商店中的值更改时触发两次?)
任何帮助都会很棒!
【问题讨论】:
标签: vue.js vuejs2 bootstrap-modal vuex bootstrap-vue