Vue

Vue.js基础知识

1.在官网上可以下载Vue.js
可以在本地加载,也可以使用CDN(内容分发网络)加载。

2、第一个Vue.js程序:

var vm=new Vue({
   el:‘#app’,
   data:{
      //数据区
      x:100,
      y:‘OK’
}
})
<div id=”app”>
  <p>{{y}}</p>
</div>

Vue实例:利用Vue的构造函数Vue()创建的实例被称为Vue实例
Vue实例名是否定义出来可以根据项目需要

Vue实例的选项:
(1)el:通过选择器将Vue实例与DOM节点挂载起来。
(2)data:为Vue实例设置所需要用到的数据,被称为“数据区”。
挂载点:Vue实例与之挂载的DOM节点就被称为“挂载点”。
3.Vue实例的属性:

	1.$el:返回Vue实例挂载点的HTML代码
	```
		vm.$el===document.querySelector(“#app”)   //true
	```
	2.$data:返回Vue实例数据区中的所有数据
	```
		vm.$data.w===vm.w      //true
	```

注:不是所有的Vue实例的选项添加上$都能够变成Vue实例的属性的

4.如何为挂载点对象绑定事件

Vue实力的方法区:通过Vue实例的methods选项创建各种方法。

methods:{
	函数名:function(){
	
	}
}

例一:单击命令按钮,在页面上显示当前日期。
在Vue方法区中的方法如何引用数据区中的数据:
(1)vm.$data.todayDate
(2)vm.todayDate
(3)this.todayDate
Vue方法区中的方法内部的this指向Vue实例。
如何获取当前日期时间:
var today = new Date(); //构造函数无参数表示当前日期
today.toLocaleString(); //将GMT时间转换为本地时间
today.toLocaleDateString(); //将GMT时间转换为本地时的日期部分
today.toLocaleTimeString(); //将GMT时间转换为本地时间的时间部分
例二:利用按钮记录用户的单击次数。
五:文本差值的使用:Mustache语法{{}}。
1.文本差值可以使用数据区中的数据,不能使用数据外的数据。
2.HTML属性的值不能使用文本插值的方式。
3.文本差值的内容如果包含HTML代码,是无法被浏览器翻译的。
4.数据区中的数据对于负面来说是双向绑定的。
通过在控制台中利用“vm.数据区中的数据"为变量赋值,可以更改文本插值在页面中的渲染结果。
5.文本插值内部不能出现流程语句。
例:在文本插值中可以使用变量或表达式。
表达式:利用运算符/函数链接常量/变量组成的式子。
(1) {{number+1}}
(2) {{number%2?‘奇数’:‘偶数’}}
{{number%2===0?‘偶数’:‘奇数’}}
(3){{arr.length}}
(4){{arr.slice(1,4)}}
(5){{message.}}
字符串转换为数组:split()
数组转换为字符串:join()、toString()
join()和toString()的区别:
join()可以通过参数制定转换为字符串后的元素间隔。
toString()只能利用逗号间隔。
6.数据区可以定义在Vue实例以外:
(1).对象数据的创建方式:
字面量对象:var o1= {a:10,b:20};
通过构造函数来创建:

						var o2=new Object();   //创建一个空对象
									o2.x=10;
									o2.y=100;
								(2).var vm=new Vue({
											el:'#app',
												data:o2
										})

7.关于文本插值的指令:
v-text:功能与{{}}的文本插值完全一样。


v-html:功能与{{}}的文本插值相同,同时支持文本插值内容中的HTML标记对。
v-once:将文本插值的结果不作为双向绑定的方式。
v-pre:忽略{{}}的文本插值功能。
六、Vue实例的生命周期(Life Cycle):
1、Vue实例的创建阶段:
beforeCreate:在Vue实例创建之前执行。(Vue实例尚不存在)
created:在Vue实例创建成功后执行。(完成了数据的初始化)
2、Vue实例的挂载阶段:
beforeMount:(完成了挂载点的初始化)
mounted:(完成了挂载点与Vue实例的挂载过程)
3、Vue实例的更新阶段:当对数据区中的数据进行修改时发生更新阶段的钩子函数的执行。
beforeUpdate:
updated:
4、Vue实例的销毁阶段:当执行了 vm.$destroy()方法后发生销毁阶段的钩子函数的执行。
beforeDestroy:
destroyed:

Vue指令

一、Vue指令的规定:
1、所有的Vue指令都是以v-开头的,并使用在标记对中。
v-text、v-html、v-once、v-pre。
2、指令的参数:
格式:v-指令名:参数
3、指令的修饰符:
格式:v-指令名.修饰符
二、绑定HTML属性:
1、完整格式:百度
简化格式:百度
2、允许利用对象的格式一次为多个属性同时绑定:
<标记 v-bind=“{HTML属性名:数据区中的数据}”></标记>
例1:鼠标经过/离开时更换图片。
三、绑定事件:
1、完整格式:

简化格式:<button @click=“btnClick”>
2、jQuery的事件机制:
事件类型名:EventTypeName,例如click、mouseover。
(1)$(“#box”).on(“click”,function(){
//事件代码
})
(2)为一个具备多个元素的节点绑定事件:

 $("ul li").on("mouseover",function(){
	    		$(this).css("color","#ff5857");
   			 }).on("mouseout",function(){
	    		$(this).css("color","#3385ff");
   			 })
	 $(this)必须使用在事件代码中,表示那一个真正触发事件的节点。

3、JavaScript的事件机制:
(1)确定
function btnClick(){ … } //利用具名函数实现
(2)
btn.οnclick=function(){ … } //利用匿名函数实现
(3)JS不允许为具备多个元素的节点绑定统一事件:
方法一:为多个元素的父元素绑定事件。

app.onmouseover=function(event){
          				 if(event.target.className===“box”){
           					 event.target.style.backgroundColor=“#3385ff”;
						}
					}
				event.target:真正触发事件的那一个对象。
 	方法二:利用for循环遍历每一个元素。
 for(var i=0;i<boxes.length;i++){
     			 (function(n){
 					 boxes[i].onmouseover=function(){
					 	this.style.backgroundColor="#3385ff";
  						console.log(n);
 					 }
  				boxes[i].onmouseout=function(){
	 				this.style.backgroundColor="#ff5857";
 				 }
			  })(i);
		}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值