vue bind class,vue绑定class方法

  vue bind class,vue绑定class方法

  向元素添加/删除类是开发中非常常见的行为之一。例如,网站导航会在选定的项目中添加一个活动类,以区分选定和未选定的样式。那么我们如何处理vue中的这种效果呢?让我们一起来看看吧。

  向项目中的元素添加/删除类是非常常见的行为之一。例如,在网站导航中,一个活动类被添加到选定的项目,以区分选定和未选定的样式。除了导航之外,这种方法在其他很多地方也被用来处理选中和未选中的样式。

  除了设置类,我们还经常设置项目中元素的内联样式。在jquery时代,我们大多使用addclass和removeClass的组合来处理类的添加/删除,使用css()方法来设置/获取元素的内联样式。

  那么我们如何处理vue中的这种效果呢?在vue中,我们可以使用v-bind指令来绑定我们的类和样式。接下来,我们来看看vue为我们提供了哪些绑定它们的方式。

  

对象语法绑定 Class

  标签切换是我们最常见的效果之一。如何让选中的标题高亮,常用的方法是动态切换类。

  div id=应用程序

  div class=button-group

  按钮

  v-for=(tab,index) in tabs

  v-bind:key=index

  v-bind:class= { active:current tab===tab }

  v-on:click=currentTab=tab

  {{tab}}/button

  /div

  组件v-bind:is= currentTabComponent /component

  /div

  脚本

  Vue.component(tab1 ,{

  模板“:”球体是选项卡页面1/p

  });

  Vue.component(tab2 ,{

  模板:球体是第2页/p 选项卡

  });

  Vue.component(表3 ,{

  模板:球体是第3页/p 选项卡

  });

  var vm=new Vue({

  埃尔: #app ,

  数据:{

  当前标签:“标签1”,

  制表符:[tab1 , tab2 , tab3]

  },

  计算值:{

  currentTabComponent() {

  返回this.currentTab

  }

  }

  });

  /脚本

  从这个例子中,我们可以看出,类active是否存在取决于下面的表达式是真还是假。当它为真时,active类被添加到元素中,否则不添加。

  不仅可以添加一个类,还可以同时添加多个类,可以和原有类共存。

  按钮

  class=btn

  v-bind:class= { BTN-primary :is primary,active: isActive}

  /按钮

  脚本

  var vm=new Vue({

  埃尔: #app ,

  数据:{

  isPrimary:没错,

  isActive:真的

  }

  });

  /脚本

  渲染结果是:

  按钮class= BTN BTN-主要活动/按钮

  我们也可以直接绑定一个数据对象。

  按钮class= BTN v-bind:class= active primary /按钮

  脚本

  var vm=new Vue({

  埃尔: #app ,

  数据:{

  activePrimary: {

   btn-primary: true,

  活动:真

  }

  }

  });

  /脚本

  渲染结果同上。

  按钮class= BTN BTN-主要活动/按钮

  此外,我们还可以使用计算属性来绑定元素的类。

  按钮v-bind:class= active class /button

  脚本

  var vm=new Vue({

  埃尔: #app ,

  数据:{

  isActive:真的

  },

  计算值:{

  activeClass() {

  返回{

  active: this.isActive

  }

  }

  }

  });

  /脚本

  

数组语法绑定 Class

  Vue也支持我们通过使用数组给元素添加类。我们修改上面向对象添加类的例子。

  button class= BTN v-bind:class=[primary,active]/button

  脚本

  var vm=new Vue({

  埃尔: #app ,

  数据:{

  主要: BTN-主要,

  主动: BTN-主动

  }

  });

  /脚本

  按照上面的方式,我们绑定固定的。如果我们需要动态切换类怎么办?我们可以使用三元表达式或在数组中使用对象语法。

  //三元表达式

  按钮v-bind:class=[isActive?活动: ,主要]/按钮

  脚本

  var vm=new Vue({

  埃尔: #app ,

  数据:{

  isActive:没错,

  主要: BTN-主要,

  主动: BTN-主动

  }

  });

  /脚本

  //在数组中使用对象语法

  button v-bind:class=[{ active:is active },primary]/button

  脚本

  var vm=new Vue({

  埃尔: #app ,

  数据:{

  isActive:没错,

  主要: BTN-主要

  }

  });

  /脚本

  

对象语法绑定 Style

  绑定内联样式时的对象语法看起来非常像css,但它实际上是一个Javascript对象。我们可以用驼峰或破折号来分隔名称。

  div v-bind:style= { color:color style,backgroundColor: background}

  对象语法

  /div

  脚本

  var vm=new Vue({

  埃尔: #app ,

  数据:{

  颜色样式:“红色”,

  背景:“蓝色”

  }

  });

  /脚本

  类似于类,我们也可以通过使用数据对象来绑定。

  Div-bind: style= style 对象语法/div

  脚本

  var vm=new Vue({

  埃尔: #app ,

  数据:{

  风格:{

  颜色:红色,

  背景颜色:“蓝色”

  }

  }

  });

  /脚本

  

数组语法绑定 Style

  Vue允许我们同时将多个样式对象绑定到同一个对象。

  Div-bind: style= [style,font style]对象语法/div

  脚本

  var vm=new Vue({

  埃尔: #app ,

  数据:{

  风格:{

  颜色:红色,

  背景颜色:“蓝色”

  },

  fontStyle: {

  字体大小:“18px”

  }

  }

  });

  /脚本

  关于Vue中Class和Style实现v-bind绑定的几种用法的这篇文章到此为止。更多Vue v-bind绑定用法的相关内容,请搜索我们之前的文章或者继续浏览下面的相关文章。希望大家以后能多多支持我们!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: