vue中常用的 v- 指令和自定义指令

常用指令

  • v-if 元素是否移除或者插入
  • v-show 元素是否显示或隐藏
  • v-model 双向数据绑定,v-bind是单向数据绑定(内存js改变影响页面)
  • v-text 是元素的innerText只能在双标签中使用
  • v-html 是元素的innerHTML,不能包含注释 <!--{{xxx}} -->
  • v-on methods和v-on的使用
  • v-for
  • v-bind class结合v-bind使用

class结合v-bind使用

  • 需要根据可变的表达式的结果来给class赋值,就需要用到v-bind:class=“xxx”

  • v-bind:属性名=“表达式”,先运算表达式。最终表达式运算结束的结果赋值给该属性名

    • 简化的写法是: :属性名="表达式"
    :key="index" 和 v-bind:key="index"; //相等
    
  • class:结果的分类

    • 一个样式: 返回字符串(三元表达式和key和样式的清单对象)
    • 多个样式:返回对象(样式做key,true或flase做值)

methods和v-on的使用

  • 绑定事件的方法
    • v-on:事件名="表达式||函数名"
    • 简写: @事件名="表达式||函数名"
  • 函数名如果没有参数,可以省略() 只给一个函数名称
  • 声明组件内函数,在export default这个对象的根属性加上methods属性,其是一个对象
    • key 是函数名 值是函数体
  • 在export default这个对象的根属性加上data属性,其是一个函数,返回一个对象
    • 对象的属性是我们初始化的变量的名称
  • 凡是在template中使用变量或者函数,不需要加this
  • 在script中使用就需要加上this

v-for的使用

  • 可以使用操作数组 (item,index),这里的item是数组中的每一个对象。
    • 可以使用操作对象 (value,key,index) 这里的key value是对象中的key,value
  • key 是类似trank by 的一个属性
  • 为的是告诉vue,js中的元素,与页面之间的关联,当识图删除元素的时候,是单个元素的删除而不是正版替换,所以需要关联其关系,设置(必须,性能)
  • 2.2.0+ 的版本里,当在组件中使用 v-for 时,key 现在是必须的。

自定义指令

参考 > https://www.cnblogs.com/mrszhou/p/7858996.html

 75     // main.js 中先将自定义指令定义好
 76     // directives有两个参数
 77         //参数一: 自定义指令 v-focus
 78         //参数二: 对象,对象中可以添加很多方法
 79                  // 添加一个inserted方法:而这个方法中又有两个参数:
 80                  //参数一:el 当前使用自定义指令的对象
 81                  //参数二:obj 是指它(v-color="color" )后面设置的表达式
 82                  //{expression:"color",value:"red",}
 83     Vue.directive("focus",{
 84         inserted:function(el,obj){
 85             // console.log(el);
 86             el.focus();
 87         }
 88     });
 89     Vue.directive("color",{
 90         inserted:function(el,obj){
 91             // obj.style.color = "red";
 92             obj.style.color = obj.value;
 93            console.log(obj.value); 
 94         },
            bind: function () {},
 95     });
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值