Вы можете использовать свойство watcher для отслеживания любых изменений в текстовой области и предотвращения таких кавычек, например:
Vue.config.devtools = false;
Vue.config.productionTip = false;
new Vue({
el: '#app',
data() {
return {
text: ''
}
},
watch: {
text(newVal, oldVal) {
let p = ["&", "amp;", "#039;", "id&", "amp;", "#039;"]
if (p.some(v => {
return newVal.includes(v);
})) {
this.text = oldVal;
}
}
}
})
<link type="text/css" rel="stylesheet" href="//unpkg.com/bootstrap/dist/css/bootstrap.min.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.16/vue.js"></script>
<div id="app" class="container">
<textarea class="form-control" v-model="text"></textarea> {{text}}
</div>