共计 720 个字符,预计需要花费 2 分钟才能阅读完成。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
</head>
<body>
<div id="app">
<!-- 插值表达式 -->
{{message}}
<p id="test">
{{message}}
</p>
<!-- 动静属性 -->
<p :id="dynamicId">
{{message}}
</p>
<p>{{number}}</p>
<p>{{number + 1}}</p>
<!-- 表达式 -->
<p>{{flag ? 'yes' : 'no'}}</p>
<p>{{message.split('').reverse().join('') }}</p>
<!-- 不是表达式 -->
<!-- <p>{{var a = 1}}</p> -->
<div v-html="html1"></div>
<div v-html="html2">
<p> 原有元素被笼罩 </p>
</div>
<!-- xss 攻打 -->
<div v-html="html3"></div>
</div>
</body>
<script>
var app = new Vue({
el: '#app',
data: {
message: 'Hello Vue!',
dynamicId: Math.random(),
number: 1,
flag: true,
html1: "<p> tao1 </p>",
html2: "<h1> tao2 </h1>",
html3: "<img src=123 onerror=alert(1)>",
}
})
</script>
</html>
正文完