详解vue.js之绑定class和style的示例代码


Posted in Javascript onAugust 24, 2017

一.绑定Class属性。

绑定数据用v-bind:命令,简写成:

语法:<div v-bind:class="{ active: isActive }"></div>。class后面的双引号里接受一个对象字面量/对象引用/数组作为参数,

这里,{active: isActive}是对象参数,active是class名,isActive是一个布尔值。下面是一个例子:

绑定对象字面量

html:

<div id="classBind">
  <span :class="{warning:isWarning,safe:isSafe}" v-on:click="toggle">
  状态:{{alert}}{{isSafe}}
  </span>
</div>
//js
var app11=new Vue({
  el:'#classBind',
  data:{
    isWarning:true,
    alertList:['红色警报','警报解除'],
    alert:''
  },
  computed:{
    isSafe:function(){
      return !this.isWarning;
    }
  },
  methods:{
    toggle:function(){
      this.isWarning=!this.isWarning;
      this.alert= this.isWarning?this.alertList[0]:this.alertList[1];
    }
  }

});

css:

.warning{
  color:#f24;
}
.safe{
  color:#42b983;
}

当点击状态文字时,可以切换后面的文字和颜色

//状态:警报解除true

//状态:红色警报false

绑定对象引用

这里绑定的对象可以写到Vue实例的data里面,而在class="classObj ",双引号中的class是对Vue实例中classObj对象的引用。classObj可以放在data中或者computed中,如果在computed中,则classObj所对应的函数必须返回一个对象如下:

js:

var app11=new Vue({
  el:'#classBind',
  data:{
    isWarning:true,
    alertList:['红色警报','警报解除'],
    alert:''
  },
  computed: {
    isSafe: function () {
      return !this.isWarning;
    },
    classObj:function(){
      return {
        warning: this.isWarning,
        safe:this.isSafe
      }
    }
  },
  methods:{
    toggle:function(){
      this.isWarning=!this.isWarning;
      this.alert= this.isWarning?this.alertList[0]:this.alertList[1];
    }
  }

});

绑定数组

html:

<div v-bind:class="classArray" @click="removeClass()">去掉class</div>

js

data: {
classArray:["big",'red']
}
methods:{
removeClass:function(){

this.classArray.pop();
}
}

css:

.big{
  font-size:2rem;
}
.red{
   color:red;  
}

效果,点击去掉class,会调用removeClass函数,去掉classArray数组的最后一项,第一次,去掉'red',字体颜色由红变黑,再点,去掉'big',字体变小。

二、绑定内联style

此时此刻,我一边看着本页旁边的那个Vue api文档学,一边到这里卖,装逼的感觉真爽o(^?^)o

html

<div id="styleBind">
  <span :style="{color:theColor,fontSize:theSize+'px'}" @click="bigger">styleBind</span>
</div>

css

这个不需要css。。。

js

var app12=new Vue({
  el:'#styleBind',
  data:{
    theColor:'red',
    theSize:14
  },
  methods:{
    bigger:function(){
      this.theSize+=2;
    }
  }

});

除了传入对象字面量以外,也可以传入对象引用和数组给V-bind:style

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript 类与静态类的实现
Apr 01 Javascript
jquery获取div距离窗口和父级dv的距离示例
Oct 10 Javascript
JavaScript实现Flash炫光波动特效
May 14 Javascript
举例讲解如何判断JavaScript中对象的类型
Apr 22 Javascript
Angularjs实现mvvm式的选项卡示例代码
Sep 08 Javascript
详解用node编写自己的cli工具
May 23 Javascript
jquery对table做排序操作的实例演示
Aug 10 jQuery
vue.js使用代理和使用Nginx来解决跨域的问题
Feb 03 Javascript
浅析vue中常见循环遍历指令的使用 v-for
Apr 18 Javascript
Jquery和CSS实现选择框重置按钮功能
Nov 08 jQuery
详解iview的checkbox多选框全选时校验问题
Jun 10 Javascript
TypeScript类型声明书写详解
Aug 28 Javascript
10个最优秀的Node.js MVC框架
Aug 24 #Javascript
Vue.js实现输入框绑定的实例代码
Aug 24 #Javascript
Vue.js实现价格计算器功能
Mar 30 #Javascript
js微信分享实现代码
Oct 11 #Javascript
Vue.js实现实例搜索应用功能详细代码
Aug 24 #Javascript
实例详解JSON取值(key是中文或者数字)方式
Aug 24 #Javascript
JSON创建键值对(key是中文或者数字)方式详解
Aug 24 #Javascript
You might like
php htmlspecialchars加强版
2010/02/16 PHP
php Smarty初体验二 获取配置信息
2011/08/08 PHP
分享下页面关键字抓取components.arrow.com站点代码
2014/01/30 PHP
PHP empty函数报错解决办法
2014/03/06 PHP
javascript作用域容易记错的两个地方分析
2012/06/22 Javascript
简单实用的反馈表单无刷新提交带验证
2013/11/15 Javascript
js获得当前时区夏令时发生和终止的时间代码
2014/02/23 Javascript
动态创建script标签实现跨域资源访问的方法介绍
2014/02/28 Javascript
html的DOM中document对象images集合用法实例
2015/01/21 Javascript
第七篇Bootstrap表单布局实例代码详解(三种表单布局)
2016/06/21 Javascript
jquery实现ajax提交表单信息的简单方法(推荐)
2016/08/24 Javascript
浅谈jQuery hover(over, out)事件函数
2016/12/03 Javascript
浅谈JavaScript find 方法不支持IE的问题
2017/09/28 Javascript
jquery根据name取得select选中的值实例(超简单)
2018/01/25 jQuery
微信小程序实现的3d轮播图效果示例【基于swiper组件】
2018/12/11 Javascript
通过JQuery,JQueryUI和Jsplumb实现拖拽模块
2019/06/18 jQuery
layer关闭弹出窗口触发表单提交问题的处理方法
2019/09/25 Javascript
ligerUI的ligerDialog关闭刷新的方法
2019/09/27 Javascript
[01:23:24]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant BO3 第三场 2月7日
2021/03/11 DOTA
pyqt4教程之widget使用示例分享
2014/03/07 Python
Python通过websocket与js客户端通信示例分析
2014/06/25 Python
python实现连接mongodb的方法
2015/05/08 Python
python遍历目录的方法小结
2016/04/28 Python
利用Python实现命令行版的火车票查看器
2016/08/05 Python
Python生成密码库功能示例
2017/05/23 Python
python爬虫入门教程--正则表达式完全指南(五)
2017/05/25 Python
浅析Python pandas模块输出每行中间省略号问题
2018/07/03 Python
python 爬虫之selenium可视化爬虫的实现
2020/12/04 Python
啦啦队口号大全
2014/06/16 职场文书
文员试用期转正自我鉴定
2014/09/14 职场文书
工商管理专业毕业生自我鉴定2014
2014/10/04 职场文书
横空出世观后感
2015/06/09 职场文书
餐馆开业致辞
2015/08/01 职场文书
业务员管理制度范本
2015/08/06 职场文书
python3 删除所有自定义变量的操作
2021/04/08 Python
SQL Server 忘记密码以及重新添加新账号
2022/04/26 SQL Server