案例
基本案例
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/c30c07fb208bf1a366f8c95117507cea.png)
1、初体验
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div id="app">{
{message}}</div>
<script src="../js/vue.js"></script>
<script>
const app =new Vue({
el:'#app',
data:{
message:"测试"
}
})
</script>
</body>
</html>
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/79e937df041744c25bfb0ff51bde9fa2.png)
2、数组展示
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div id ="app">
<ul>
<li v-for="item in subject">{
{item}} </li>
</ul>
</div>
<script src="../js/vue.js"></script>
<script>
const app = new Vue({
el:'#app',
data: {
message: '你好啊',
subject: ['语文', '数学', '英语']
}
})
</script>
</body>
</html>
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/a87d050a0533ec0254addc85455befe1.png)
3、v-on 计数使用
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div id="app">
<h2>当前计数器:{
{counter}}</h2>
<button v-on:click="counter++">+</button>
<button v-on:click="sub">-</button>
<button @click="sub">-</button>
</div>
<script src="../js/vue.js"></script>
<script>
const app = new Vue({
el:"#app",
data:{
counter:0
},
methods:{
sub:function(){
this.counter--;
}
}
})
</script>
</body>
</html>
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/4a2a0b697379a78bc5a21925a7aacd3e.png)
4、mustacher语法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div id="app">
<h2>{
{message}}</h2>
<h2>{
{name + sex}}</h2>
<h2>{
{name + '' + sex}}</h2>
<h2>{
{name}}{
{sex}}</h2>
<h2>{
{age>10?'大于10':'不大于10'}}</h2>
</div>
<script src="../js/vue.js"></script>
<script>
const app =new Vue({
el:'#app',
data:{
message:"测试",
name:"张三",
sex:"男",
age:10
}
})
</script>
</body>
</html>
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/5cba278918482ef04e095f4c42047708.png)
5、v-once
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div id="app">
<h2>{
{message}}</h2>
<h2 v-once>{
{message}}</h2>
</div>
<script src="../js/vue.js"></script>
<script>
const app =new Vue({
el:'#app',
data:{
message:"测试"
}
})
</script>
</body>
</html>
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/dc185c7d72ee0ae2b4a189eb6943edea.png)
6、v-html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div id="app">
<h2>{
{url}}</h2>
<h2 v-html="url"></h2>
</div>
<script src="../js/vue.js"></script>
<script>
const app =new Vue({
el:'#app',
data:{
message:"测试",
url:'<a href="http://www.baidu.com">百度一下</a>'
}
})
</script>
</body>
</html>
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/4a9ec36e39ecd01eded7055e3ad00509.png)
v-bind
1、基本用法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div id="app">
<!--错误的用法-->
<!--<img src="{
{imgURL}}">-->
<img v-bind:src="imgURL">
<a v-bind:href="ahref">百度一下</a>
<!--语法糖写法
<img :src="imgURL">
<a :href="ahref">百度一下</a>-->
</div>
<script src="../js/vue.js"></script>
<script>
const app =new Vue({
el:'#app',
data:{
imgURL:"https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3228549874,2173006364&fm=26&gp=0.jpg",
ahref:"http://www.baidu.com"
}
})
</script>
</body>
</html>
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/4c09363fecfd912115839da924446daf.png)
2.v-bind-class
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<style>
.activeClass{
color:red;
}
</style>
<div id="app">
<h2 class="activeClass">{
{message}}</h2>
<h2 :class="active">{
{message}}</h2>
<h2 :class="{activeClass:true}">{
{message}}</h2>
<h2 :class="{activeClass:isActive}">{
{message}}</h2>
<button @click="btnClick">改变颜色</button>
<h2 :class="getClass()">{
{message}}</h2>
</div>
<script src="../js/vue.js"></script>
<script>
const app =new Vue({
el:'#app',
data:{
message:"测试",
active:'activeClass',
isActive:true
},
methods:{
btnClick:function(){
this.isActive=!this.isActive;
},