首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带ElementUI消息的Vue MessageBox?

带ElementUI消息的Vue MessageBox?
EN

Stack Overflow用户
提问于 2017-07-07 14:53:11
回答 1查看 2.4K关注 0票数 2

我试图在我的Vue应用程序中使用MessageBox of ElementUI来显示动态的ElementUI内容。内容来自JSON数据,是一个HTML字符串,本质上需要解析为HTML。通常,您可以使用指令v-html来完成这一任务,但是在MessageBox组件中没有这样明显的选项。

显然,您可以在消息中呈现HTML,但是必须使用VNode方法(?)。我看到的示例展示了如果在脚本中编写,如何执行,但是由于我从JSON数据中将预先格式化的HTML作为字符串,所以我看不出如何将其用于我的优势。

我可能只需切换到另一个模态组件,但由于我已经使用了几个ElementUI组件,所以我宁愿将其全部保留在同一个系统中。

这是我的剧本:

代码语言:javascript
复制
<template>
    <div>
        <el-button
            v-if="body"
            type="text"
            @click="openModal"
        >More Info
        </el-button>
    </div>
</template>

<script>
export default {

    methods: {
        openModal() {
            const h = this.$createElement;

            this.$msgbox( {
                title: this.title,
                message: this.body,
                confirmButtonText: 'OK',
                closeOnClickModal: true,
                showCancelButton: false
            } );
        }
    },
    props: {
        body: String, // The MessageBox message
        title: String // The MessageBox title
    }
}
</script>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-07 15:37:20

一个潜在的解决方案是将HTML编译成一个呈现函数,并将其传递给Vue的createElement

代码语言:javascript
复制
message: this.$createElement(Vue.compile(this.body))

这里是基于文档的一个例子

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44973839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档