vue基础语法(vue2)

文章目录

vue基础语法

定义在类中的是方法

方法:

name:function(){
	
}
name(){
	
}

{{}}:用在内容中,而不为属性

调用function一般要加()

v-once:修改一次,第一次改完,第二次后都不改变

v-tml:将tml标签解析 <div v-tml="data"></div>

v-text:解析成文本 与{{data}}用法类似,而且覆盖后面的{{data}}数据

<div v-text="data"></div>

v-pre:原封不动的表现数据

<div v-pre>{{data}}</div>
//data:world---->表现为{{data}}

v-cloak:斗篷,在vue解析前有他v-cloak,在解析后没有,

<div v-cloak></div>
[cloak]:{
	display:none
}

v-bind:绑定属性,语法糖::

<img :src="data"></img>
<img v-bind:src="data"></img>
a标签的链接也是这样
//data:xxx.png

绑定class也是可以的
<div :class='active'></div>
//active:"active"  可以放对象
<div :class="{类名1:true,类名2:boolean}"></div>
<div :class="{active:isActive,line:isActive}"></div>
//通过修改布尔值来决定属性是否出现    active line

//可以动态绑定为类,也可以数组语法"['active','line']";不灵,可以用function来return
// :class="['active','line']"	success
//:class="[active,line]"	fail

:style="{key:value}" 如果是value没有加上''就是变量,加了就是字符
:style="[{},{}]"{key:value}

点击:v-on:click="cilick"

v-for:

v-for:"(item,index) in data"
v-for="data"
v-for="a in data"

组件

驼峰标识:font-size=fontSzie

computed:计算属性,当我们需要对某种数据进行变化时
不加()
本质是一个属性,可以对他进行类的封装,进行set和get方法设置
计算属性是有缓存的
一般是没有set方法,所以是只读属性,所以最后呈现形式就是

属性:function(){
	return xxxx;
}
//或者
属性(){
	return xxx;
}
//set方法如果想要实现,也是会有数据的
fullname:{
	set:function(newValue){
		console.log('-----',newValue);//newValue
	}
	get:function(){
		return xxx;
	}
}

computed和methods对比

  • computed只调用一次,如果数据没变化,内部有缓存
  • methods调用多次,相当于重新计算

ts:类型检测

v-on:事件监听

v-on:click="方法"
@click="方法"
@click="方法(item)"
如果没有小括号,但本身需要参数,此时,会将浏览器生成的event传过去

v-on的修饰符,可以处理事件冒泡

stop
事件冒泡:
@click.stop="方法",防止事件冒泡

.prevent event,preventDafault

监听键盘点击
@keyup="keyup"    松开键盘才有
@keyup.enter="keyup"  回车

.navie
.once,只触发一次回调

v-if v-else-if v-else

input服用问题联合v-if

<input v-if="user" placeholder="用户" />
<input v-else placeholder="邮箱" />
<button @click="user=!user">点击</button>

//虚拟dom到网页,出于性能考虑,会尽可能复用,解决方法使用Key
<input v-if="user" placeholder="用户"  key="user"/>
<input v-else placeholder="邮箱" key="email" />
<button @click="user=!user">点击</button>

v-show:决定某个元素是否显示 和v-if类似

v-if是删除,如果是false,根本不会存在
v-show,增加了一个行内样式,元素还在,dispaly:None

如果显示和隐藏频繁时,用v-show
只有一次切换用,v-if
<div v-if="true">{{data}}</div>
<div v-show="true">{{data}}</div>
<div v-show="false">{{data}}</div>//<div display:none>{{data}}</div>

v-for

v-for="(item,index) in data"
v-for="(value,key) in data"
v-for="(value,key,index) in data"

给v-for添加上key属性,为了保证不一样,独特,更够更好的复用,一般绑定Key,:key=item

函数

function(...sum):连续传参
sort:排序
reverse:反转
splice:删除,更新,插入
push:插入最后一个
pop:弹出最后一个
unshift:插入地瓜叶i
shift:删除第一个
toFixed:保留几位小数

for each
for of
fo in 
map
reduce
filter:

v-model:

数据双向绑定 
默认绑定类型为string
e.target.value
互斥
表单提交
name='sex',name一样只能选一个

label的好处,可以点击文字也能使框选中
value:获取值

radio:单个值	name:
checkbox:多个值,数组	单个值:布尔值

值绑定:动态绑定数据,标签里的数据,比如input里的value值,类似v-bind,:

修饰符:v-bind后加个.
同理
v-model加个点.
有时候我们并不希望,数据改变跟随哦那个用户键盘输入改变而改变,而是等到敲回车----->lazy
v-model.lazy="data"

v-model.number  绑定为数值类型,将输入的字符数字变为number类型

v-model.trim:去除空格
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值