laravel - 如何使用引导程序在 VueJS 中打开模式?
问题描述
我正在尝试使用 boostrap 在我的 Vue 模板中打开一个模式。但是每当我尝试在其上使用 jquery 时,模态都不会出现。
这是我的代码:
<template>
<div id="app_religion">
<!-- Button trigger modal -->
<!-- <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModal">Open</button> -->
<button type="button" class="btn btn-primary" @click="showModal()">
Open
</button>
<!-- Modal -->
<div class="modal fade" id="exampleModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Modal title</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
test
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
methods: {
showModal() {
console.log("test")
$('#exampleModal').modal('show');
},
},
}
</script>
我在使用 Vue 方面真的很新,谁能指导我如何解决我的问题。我真的很想弄清楚。
解决方案
这可以通过纯js轻松实现
首先为您的模态分配一个唯一的 id
<div class="modal fade" id="uniqueId" tabindex="-1" role="dialog" aria-labelledby="uniqueIdlLabel" aria-hidden="true">
从引导程序导入模态
import { Modal } from "bootstrap";
声明一个变量,它将作为您的模态代理,声明uniqueModal
如下,将变量分配给由 检索到的 DOM 元素uniqueId
,使用引导程序提供的内置函数来操作模态。文档
export default {
name:"randomName",
data(){
return {uniqueModal:null}
},
methods:
{
showUniqueModal() {
this.uniqueModal = new Modal(document.getElementById("uniqueId"),{ keyboard: false });
this.uniqueModal.show();
},
closeUniqueModal() {
this.uniqueModal.hide();
},
},
}
推荐阅读
- php - 已加载时未找到 PHP 类
- r - 根据先前的值命名列中的值,没有系统顺序
- php - WebSocket 握手期间出错:意外的响应代码:200 - Laravel Websockets
- coffeescript - Webdriver.io。使用 CTRL+单击 coffescript 突出显示多个元素
- uml - 如何在 UML 中的类构造函数中为新类建模
- javascript - 有没有比 JSON 更简单的语法允许结构化文本,并且可以在 javascript 中处理?
- amazon-web-services - AWS CodeDeploy 可以为 lambda 进行跨账户部署吗?
- ios - 当应用程序未在 Swift 中运行时接收数据
- java - 如何外部化配置服务器(而不是客户端)的 application.yml?
- c# - C ++中的UDP帧丢失