Vue模板语法

1.Vue实例

在vue2.x版本中,需要通过new Vue()构造方法来创建一个新的Vue应用实例

var app = new Vue({
/*选项*/
})

new Vue()构造方法将接收一个根组件选项对象作为参数,该对象可以包含指定dom元素、数据、方法、组件、生命周期钩子等,new Vue()构造方法返回应用程序实例本身。
其中,需要通过el来指定一个dom元素,在该dom元素上装载Vue实例的根组件,代码如下

<<div id="app"></div>
//可以将链接复制到浏览器打开右键另存到本地导入到项目中使用
<script src="https://cdn.jsdelivr.net/npm/vue@2.7.16/dist/vue.js"></script>
<script>
		   var app  = new Vue({
			   el:"#app",
			   data:{
			   },
			   methods:{
			   },
			   created(){
			   }
		   })
</script>

这样该id = app的div dom元素中的所有数据变化会被Vue框架所监控,从而实现数据的双向绑定。

2.组件实例选项

组件中可以设置的选项有data、methods、props、created等,其中最基础的是data数据及methods方法

2.1 data数据选项

在data选项中可以定义数据,这些数据可以在实例对应的模板(例如id=app的div)中进行绑定并使用。
data是一个数据对象

<script>
		   var app  = new Vue({
			   el:"#app",
			   data:{
				   shengao:185
			   }
		   })
		   console.log(app.shengao) //=>185
		   //修改app.shengao的值
		   app.shengao = 190
		   console.log(app.shengao) //=>190
</script>

这些数据属性仅在首次被创建时添加,可以对尚未提供所需值的数据使用null、undefined或其它占位的值。

2.2 method选项

在method选项中可以定义方法,并直接通过组件实例访问这些方法,或者在指令表达式中使用这些方法,方法中的this自动绑定为组件实例。

<script>
		   var app  = new Vue({
			   el:"#app",
			   data:{
				   shengao:185
			   },
			   methods:{
				   gaibianshengao(shuzhi){
					   //this 指向该Vue组件的实例
					   this.shengao = this.shengao+shuzhi;
				   }
			   }
		   })
		   console.log(app.shengao) //=>185
		   //调用方法修改app.shengao的值
		   app.gaibianshengao(5)
		   console.log(app.shengao) //=>190
</script>

注意:不要使用箭头函数来定义method函数(如gaibianshengao:()=>this.xxx)这是因为箭头函数绑定了父级作用域的上下文,所以this 不会按照期望指向组件实例,this.xxx将会是未定义的

3.Vue生命周期

每个组件在被创建时都要经过一系列的初始化过程。在这个过程中会运行一些叫作生命周期钩子的函数。
比如:created钩子函数可以用来在一个实例被创建之后执行代码。

var app = new Vue({
	//要绑定的页面元素
	el:"#app",
	data:{
		num:1
	},
	//生命周期函数:created(){}:Vue实例创建之后调用的函数,监听Vue的创建,一旦Vue创建成功之后 自动执行的函数
	created(){
		//初始化数据
		this.num = 2	
	}
})
//在控制台输出app的num的值为2
console.log(app.num)//--》2

4.插值

插值(“{{ }}”双大括号)将会在页面渲染时渲染Vue中data中对应属性的值,无论什么时候,只要是Vue中data中的属性的值发生变化,插值跟着变
例如如下代码:

<div id="app">
			<!-- 双大括号:插值 {{num}}将会取到Vue中data中num的值,无论什么时候,只要是Vue中data中的num的值发生变化,插值跟着变-->
			<!-- 插值中可以进行运算 -->
			{{num+1}}  <!-- 2 -->
			{{num}}+1  <!-- 2+1 -->			
</div>
		
<script>
	//创建Vue实例对象,相当于java中的有参构造({})
	var app = new Vue({
		//要绑定的页面元素
		el:"#app",
		data:{
			num:1
		}
	})
	//修改num的值
	app.num = 2;
</script>
  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值