我试图展示VueJS中一个函数的bootstrap模式。我基本上是在寻找vanilla JS的方法来做到这一点:$('#myModal').modal(“show”).有很多方法可以使用BootstrapVue来实现这一点,但是我目前使用的项目没有使用bootstrapVue,只是标准的bootstrap 4。
//component.vue
<template>
<div>
<button type="button" class="btn btn-primary">My Modal</button>
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
...
</div>
</div>
</div>
</div>
</template>
<script>
export default {
methods: {
buttonClick() {
// Need to display modal in here
//$('#myModal').modal("show")
}
}
};
</script>
3条答案
按热度按时间0dxa2lsx1#
当你看引导模式如何与jquery一起工作时,你会发现他们向模式添加了一个show类,并将模式的样式从
style="display: none"
更改为style="display:block"
。和一个div
<div class="modal-backdrop fade show"></div>
附加到主体,这个div是黑色的,覆盖在模态后面的背景上要做到这一点,你可以这样做:
codesandbox demo
希望这能对你有所帮助
zaq34kh62#
我这样做了:
我传递
showDialog
作为一个prop,但我猜它可能在data()
中1mrurvl13#
问题是背景不再运作。我的意思是,我们希望当你点击外部的时候,模态会关闭,但是在这个例子中并不是这样。更好的解决方案是使用标准的HTML对话框。