我正在尝试将格式化的HTML添加到v对话框的内部。我的内部有v卡,但我已经将其撕掉了,所以我可以从头开始。这是我到目前为止所拥有的
<v-dialog v-model="dialogPubs" scrollable max-width="950px">
<div>{{editedItem.Publication}}</div>
</v-dialog>
{{editedItem.Publication}}包含格式化的HTML,该HTML具有颜色更改以及超链接。我已经看到可以在使用v卡的地方使用带有v-html的v文本,但是它对我来说不是。
我有一个数据表,当我双击一行时,会弹出带有格式化HTML的对话框,但是我得到的是纯文本。如果我需要放回V卡,只要可以呈现HTML,就可以了。谢谢。
答案 0 :(得分:1)
请仔细检查您如何使用v-html
。您需要在将包含HTML的元素上使用它,并且需要将其添加为绑定到包含HTML字符串的data
属性的属性。请参见下面。
new Vue({
el: '#app',
vuetify: new Vuetify(),
data() {
return {
show: true,
stuff: "<span><strong>hello</strong> <span>world</span></span>"
};
}
})
<link href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/@mdi/font@3.x/css/materialdesignicons.min.css" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/vuetify@2.x/dist/vuetify.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/vue@2.x/dist/vue.js"></script>
<script src="https://cdn.jsdelivr.net/npm/vuetify@2.x/dist/vuetify.js"></script>
<div id="app">
<v-app>
<v-content>
<v-layout>
<v-dialog v-model="show" scrollable max-width="950px">
<v-card>
<div v-html="stuff"></div>
</v-card>
</v-dialog>
</v-layout>
</v-content>
</v-app>
</div>