vue指令(组件)的基本使用一

接触过angular 的小伙伴们可能觉得学起vue的指令更加简单(个人认为),因为很相似,但一些语法略有不同,记录一下遇到的问题

首先来说一下vue2.0以后很多语法发生变化,但我们往往搜索到的文章是用1.0的语法,这时可能就要多注意一下新语法是如何写的;例如 v-for 的index属性,在之前是$index,

但你在2.0中使用就会报$index is not defined;

一、v-for

<ul>  
         <li @click="toggle(tab.view,index)" v-for="tab in tabs" v-bind:class="{active: index==active}">
        {{tab.type}}  
        </li> 

<ul/>

解决了$index,发现还是报错,语法写的有问题,index也找不到;后来想到是不是没有引入index,解决

<ul>  
         <li @click="toggle(tab.view,index)" v-for="(tab,index) in tabs" v-bind:class="{active: index==active}">
        {{tab.type}}  
        </li> 

<ul/>

犯这个错误可能是受angular 影响,我记得 angular的ng-repeat  的$index并不需要引入,注意吧;

v-for 除了这种写法,还可以是v-for="((key,value)) in tabs" 与angular 类似;

二、v-bind:class 或:class 

1、对象语法

支持某个css实现与否,值为boolean值,true或false,等同ng-class  v-bind:class="{active: index==active}",支持多个class属性v-bind:class="{active: index==active,name:true(或者boolean变量)}"

2、数组语法(官网)-没用过

<div v-bind:class="[activeClass, errorClass]"></div>

data: {

activeClass: 'active',

errorClass: 'text-danger'

}

三、v-bind:src 图片路径   这里vue2.0和1有区别,注意(1.0为src)

四、v-style(官网)与na-class雷同

1、对象语法

<div v-bind:style="{ color: activeColor, fontSize: fontSize + 'px' }"></div>

data: {activeColor: 'red',fontSize: 30}

或者另外的更好

<div v-bind:style="styleObject"></div>

data: {styleObject: {color: 'red',fontSize: '13px'}}

2、数组语法

<div v-bind:style="[baseStyles, overridingStyles]"></div>

多个数组对象

五、v-if \v-show 区别无非一个是移除元素,一个是display:none,值都为boolean值

六、v-on:click (还有其他)等事件

七、绑定基本数据   {{}}与angular 相似,出现加载{{}}问题,angular 用ng-bind=""绑定,vue 我还没试,貌似有cloak方法

八、表单组件 

v-model 与ng-model 类似, 绑定data,即可实现双向绑定;

九、过滤器

用于对数据进行处理(有全局和局部两种)

1、局部(用|)

{{ message | capitalize }}

你可以在一个组件的选项中定义本地的过滤器

filters: {

capitalize: function (value) {

 if (!value) return ''

value = value.toString()

return value.charAt(0).toUpperCase() + value.slice(1)

}

}

也可实现函数传参

{{ message | filterA('arg1', arg2) }}

全局过滤器还没用到;就这些吧,都是基础了;


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值