详解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 相关文章推荐
Chrome Form多次提交表单问题的解决方法
May 09 Javascript
jQuery实现的原图对比窗帘效果
Jun 15 Javascript
javascript 获取HTML DOM父、子、临近节点
Jun 16 Javascript
浅谈JavaScript 的执行顺序
Aug 07 Javascript
jQuery Ajax 全局调用封装实例代码详解
Jun 02 Javascript
JS 日期与时间戮相互转化的简单实例
Jun 22 Javascript
基于 Vue.js 2.0 酷炫自适应背景视频登录页面实现方式
Jan 17 Javascript
AngularJS下$http服务Post方法传递json参数的实例
Mar 29 Javascript
JS实现放烟花效果
Mar 10 Javascript
Vue computed 计算属性代码实例
Apr 22 Javascript
axios解决高并发的方法:axios.all()与axios.spread()的操作
Nov 09 Javascript
原生JS实现京东查看商品点击放大
Dec 21 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的源码中深入了解stdClass类
2014/04/18 PHP
3种方法轻松处理php开发中emoji表情的问题
2016/07/18 PHP
php is_executable判断给定文件名是否可执行实例
2016/09/26 PHP
php实现等比例压缩图片
2018/07/26 PHP
JavaScript 检测浏览器和操作系统的脚本
2008/12/26 Javascript
JavaScript实现存储HTML字符串示例
2014/04/21 Javascript
javascript数字时钟示例分享
2014/04/23 Javascript
NodeJS制作爬虫全过程(续)
2014/12/22 NodeJs
7个让JavaScript变得更好的注意事项
2015/01/28 Javascript
JavaScript:Array类型全面解析
2016/05/19 Javascript
详解Jquery的事件操作和文档操作
2016/12/19 Javascript
如何快速上手Vuex
2017/02/14 Javascript
Javascript中字符串相关常用的使用方法总结
2017/03/13 Javascript
手机端转换rem适应
2017/04/01 Javascript
微信小程序 如何引入外部字体库iconfont的图标
2018/01/31 Javascript
使用javascript函数编写简单银行取钱存钱流程
2018/05/26 Javascript
Nodejs实现WebSocket代码实例
2020/05/19 NodeJs
JS遍历树层级关系实现原理解析
2020/08/31 Javascript
openlayers 3实现车辆轨迹回放
2020/09/24 Javascript
django settings.py 配置文件及介绍
2019/07/15 Python
python实现批量命名照片
2020/06/18 Python
用python批量下载apk
2020/12/29 Python
美国著名的团购网站:Woot
2016/08/02 全球购物
C语言中一个结构不能包含指向自己的指针吗
2012/05/25 面试题
高中运动会广播稿
2014/01/21 职场文书
护士毕业生自我鉴定
2014/02/08 职场文书
结婚喜宴主持词
2014/03/14 职场文书
公司周年庆典策划方案
2014/05/17 职场文书
奥林匹克运动会口号
2014/06/19 职场文书
党员自我剖析材料(群众路线)
2014/10/06 职场文书
敬业奉献模范事迹材料(2016精选版)
2016/02/26 职场文书
《别在吃苦的年纪选择安逸》读后感3篇
2019/11/30 职场文书
巧用 -webkit-box-reflect 倒影实现各类动效(小结)
2021/04/22 HTML / CSS
使用kubeadm命令行工具创建kubernetes集群
2022/03/31 Servers
Win11运行育碧游戏总是崩溃怎么办 win11玩育碧游戏出现性能崩溃的解决办法
2022/04/06 数码科技
Python图像处理库PIL详细使用说明
2022/04/06 Python