我想在VueJS中为我的项目实现Modal窗口 . 就像我在jQuery中一直做的那样:
-
通过AJAX获取模态的HTML(HTML是动态的,后端使它成为可能)
-
将HTML代码附加到BODY
但是VueJS有不同的逻辑,我真的不知道如何创建完全动态的模态窗口 .
我可以 create Modal window component 并将其附加到正文,但我不能将HTML(我从AJAX请求获得)放在组件内作为模板插槽
<slot></slot>.
那我该怎么做呢?也许一些最好的做法?
谢谢
2 回答
将模式元素设置为您希望HTML内容具有属性
v-html="modalContent"
,然后在您的vue代码中打开该模式时生成Ajax请求并将生成的HTML存储到this.modalContent
中我解决了
我们需要将我们的模态组件放在“#app”之外,其中包含所需的html(从AJAX获取)并将该实例作为新的vm启动 .
并创建包装器来管理它
当然hide方法可以破坏当前的模态窗口VM等等 .
所以在那之后我们将拥有功能齐全的模态窗口,希望能帮助别人 .