我是Vue JS的新手,正在尝试使用此数组传递HTML表,但在下拉菜单中选择了所需的选项,然后显示了它,但我不知道该怎么做。我将HTML放在其中,当我这样做时会打印代码。一点帮助将不胜感激。
这是HTML文件:
<div id="app">
<div>
{{pickedValue}}
</div>
<picker v-model="pickedValue"></picker>
</div>
这是JS文件,我想在列表中放置HTML表:[“ c”,“ d”,“ e”]
console.clear()
Vue.component("picker",{
props:["value"],
data(){
return {
list:["c","d","e"],
currentValue: this.value,
selectedValue: ""
}
},
template:`
<div>
<select @change="currentValue = $event.target.value" v-model="selectedValue">
<option value="">Select</option>
<option v-for="item in list" :value="item" :key="item">{{item}}</option>
</select>
</div>
`,
watch:{
currentValue(newValue){
if (!this.list.includes(newValue))
this.selectedValue = ""
this.$emit('input', newValue)
}
}
})
new Vue({
el:"#app",
data:{
pickedValue: null
}
})
答案 0 :(得分:1)
您应该改用v-html
。使用此命令时要小心,因为如果“ c”,“ d”,“ e”是用户输入,则可能会使您的应用程序受到XSS攻击:
<div id="app">
<div v-html="pickedValue"></div>
<picker v-model="pickedValue"></picker>
</div>