我正在使用vue2中的1 component = 1文件样式进行开发.
我有一个通过Bootstrap-Vue表组件构建的表,我正在使用提供程序向它传递一个项目.
其中一列包含每行的修改按钮.
这些按钮触发bootstrap-modal.
我正在使用V-if来初始化表及其属性.
- <b-modal v-if='toShow' id="modalallergy" @hide="resetModal">
- <h4 class="my-1 py-1" slot="modal-header">Allergie {{ modalDetails._id }}</h4>
- <b-container class="bv-example-row">
- <b-row>
- <b-col>
- identifiant : {{modalDetails.data.content}}
- </b-col>
- <b-col>
- Catégorie : {{modalDetails.data.content}}
- </b-col>
- </b-row>
- </b-container>
- </b-modal>
- <b-modal id="modalallergy-edit" @hide="resetModal">
- <h4 class="my-1 py-1" slot="modal-header">Edition de l'allergie {{ modalDetails._id }}</h4>
- <pre>{{ modalDetails.data}}</pre>
- </b-modal>
这是我的模态,就在上面我有我的按钮:
- <button class="btn btn-xs btn-success" @click.stop="details(row.item,row.index,$event.target)">
- <span class="glyphicon glyphicon-search"></span>
- </button>
及以下< script>和方法部分我接到我的电话:
- details (item,index,button) {
- this.modalDetails.data = item
- this.modalDetails.index = index
- this.modalDetails._id = item.content._id
- this.$root.$emit('bv::show::modal','modalallergy',button)
- }
问题是只有第二次点击按钮才会触发模态打开. (桌子的属性还没有水合 – 至少从按钮和模态的角度来看不是这样.)
我也尝试使用布尔值并手动传递参数,但在这种情况下它根本不打开.
解决方法
检查您的代码,我不确定,但您可以尝试
- details (item,button)
- this.$root.$emit('bv::show::modal',button)
- }