vue指令

vue指令:指带有 v-前缀 的特殊标签属性

v-html

1、作用:设置元素的innerHTML,解析字符串标签

2、语法:v-html

我们来举个例子:

例如这里,此时<div>{{msg}}</div>不能把百度实现跳转网页的效果,

它会直接把<a herf="http://www.baidu.com">百度 </a>给显示出来,达不到我们想要的效果

而如果我们把<div>{{msg}}</div>改成 <div v-html="msg"></div>,那么就能实现我们想要的效果了

此时点击百度即可跳转到百度页面

v-show和v-if

v-show

1、作用:控制元素显示隐藏
2、语法: v - show ="表达式"     表达式值 true 显示, false 隐藏
3、原理:切换 display : none 控制显示隐藏
4、场景:频繁切换显示隐藏的场景

v-if

1、作用:控制元素显示隐藏(条件渲染)
2、语法: v - if ="表达式"         表达式值 true 显示, false 隐藏
3、原理:基于条件否创建或移除元素节点
4、场景:要么显示,要么隐藏,不频繁切换的场景

相同点:

都能使元素隐藏起来

不同点:

1、原理

v-show的原理是切换 display : none 控制显示隐藏,而v-if的原理是基于条件否创建或移除元素节点。

举一个例子:

首先我们创建两个盒子,分别用v-show和v-if来控制它们

此时我们可以在浏览器中检查到这两个盒子

然后我们把true改成false,把盒子隐藏起来

此时我们再到浏览器中检查,能看到只有v-show中的盒子存在,而v-if的盒子被删除了

这就是两种指令的区别

2、使用场景

由上面的案例演示,我们可以知道二者的区别,那么就肯定有更适合其中一个指令的一些项目。

v-show适用于频繁切换显示隐藏的场景,我们可以用在tap栏的内容显示上;

v-if更适用于要么显示,要么隐藏,不频繁切换的场景,我们可以使用在提示用户登录上

v-else和v-else-if 

1、作用:辅助 v - if 进行判断渲染
2、语法: v - else、 v - else - if ="表达式" 

3.注意:需要 v - if 一起使用

其实v-else和v-else-if 和js中的if-else的使用方法相类似

案例:

可以通过控制gender的值来控制性别的显示

gender等于1的时候会显示:                    gender等于2的时候会显示:

                                                                   

下面是v-else-if的案例,和v-else同理。

通过控制score的值可以控制输出的成绩评定等级

v-on

1、作用:注册事件=添加监听+提供处理逻辑

2、语法:
① v - on :事件名="内联语句"
② v - on :事件名=" methods 中的函数名"

③ v - on :   事件名="fn(参数1,参数2)"

3、 v - on :可以简写为@

①案例:v - on :事件名="内联语句"

这里创建了一个加减数字的按钮

可以得到这样的按钮,可以对数字进行加一或者减一。

         

当然事件的类型也不一定是click,也可以换成其他事件类型

② 案例:v - on :事件名=" methods 中的函数名"

我们制作一个按钮,通过点击按钮可以实现将*显示或者隐藏

效果:

                      

③案例:v - on :   事件名="fn(参数1,参数2)"

这里我们做一个售货机,当点击对应按钮时,我们的余额减少相应的金额

v-bind

1、作用:动态的设置 html 的标签属性→ src url title ...
2、语法: v - bind :属性名="表达式"

3、 v - bind :属性名="表达式"可以简写为 :属性名="表达式",相当于可以把v - bind去掉

4、v - bind 对于样式控制的增强-操作 class 
      语法: class ="对象/数组"

      ①对象→键就是类名,值是布尔值。如果值为 true ,有这个类,否则没有这个类

      ②数组→数组中所有的类,都会添加到盒子上,本质就是一个 class 列表

v-for

1、作用:基于数组循环,多次渲染整个元素。例如:数组、对象、数字......

2.遍历数组语法: v - for ="( item , index ) in 数组"
   item 每一项, index 下标

   此处 index可以省略

3、v-for中的key:

①作用:给列表项添加的唯一标识。便于 Vue 进行列表项的正确排序复用。

②语法: v - for ="( item , index ) in 数组"  :key="item.id"

案例:

动态渲染水果店

v-model

1.作用:给表单元素使用,双向数据绑定→可以快速获取或设置表单元素内容
①数据变化→视图自动更新
②视图变化→数据自动更新

2.语法: v - model ='变量'

案例:

这里做一个登录的页面

这样做的好处就是无论我们在页面中输入内容,还是在后台中修改内容,另一边都是实时更新的。

例如这里我在表单中输入数据

则此时可以在检查中查看到表单中的数据

这样做可以很方便我们以后在后台读取和修改表单中的内容。

  • 20
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值