Vue v-bind动态绑定class实例方法


Posted in Javascript onJanuary 15, 2020

现在很多网站,都是希望动态切换class,更换css样式。下面我们使用Vue的v-bind绑定class

v-bind动态绑定class

对象语法绑定(常用)

red和size的值为true就在class显示red和size,false就不显示。下面有两种写法:

<style>
  .red{
    color: red;
  }
  .size{
    font-size: 20px;
  }
</style>

<div id="app">
  <ul>
    <!--写法一-->
    <li :class="{red:isColor,size:isSize}">{{list}}</li>
    <!--写法二,v-bind绑定函数必须加上()-->
    <li :class="listData()">{{list}}</li>
  </ul>
  <!--点击这个,red的true变false,反之red的false变true-->
  <button @click="reverse">反选</button>
</div>

<script>
  const app=new Vue({
    el:"#app",
    data:{
      list:"Vue",
      isColor:true,
      isSize:true
    },
    methods:{
      reverse:function () {
        return this.isColor = !this.isColor;
      },
      //写法二
      listData:function () {
        return {red:this.isColor,size:this.isSize};
      }
    }
  })
</script>

注意:v-bind:class指令可以与普通的class特性共存;对应的语法糖:“:class”等于v-bind:class

数组语法绑定

数组语法不常用,主要是它不灵活:

<div id="app">
  <ul>
    <!--这里绑定data的变量-->
    <li :class="[acli,bcli]">{{list}}</li>
  </ul>
</div>

const app=new Vue({
    el:"#app",
    data:{
      list:"Vue",
      acli:"aaa",
      bcli:"bbb",
    },
})

字符串绑定更数组语法绑定差不多,不常用

<div id="demo">
<span :class="classA"></span>
</div>

let vm = new Vue({


el:"#demo",


data:{



classA:"string"


}
})

综合的写法

<div id="demo">
<span :class="[one,{‘classA‘:classa,‘classB‘:classb}]"></span>
</div>

var vm = new Vue({


el:"#demo",


data:{



one:"string",



classa:true,



classb:false


}
})

v-bind动态绑定style

对象语法绑定(常用)

v-bind:style 的对象语法十分直观——看着非常像 CSS,但其实是一个 JavaScript 对象。

<div id="app">
  <ul>
    <!--{key(属性名):value(属性值)}-->
    <li :style="{color:color,fontSize:size+'px'}">{{list}}</li>
    <!--如果你想属性值原样数组,就必须加上单引号-->
    <li :style="{color:'red'}">{{list}}</li>
  </ul>
</div>

const app=new Vue({
  el:"#app",
  data:{
    list:"Vue",
    color:"red",

 size:50
  },
})

注:对象语法的value(属性值),如果加上单引号就原样输出,不加就输出data的变量值

数组语法绑定

v-bind:style 的数组语法可以将多个样式对象应用到同一个元素上:

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

const app=new Vue({
  el:"#app",
  data:{
    list:"Vue",
    baseStyles:{fontSize:"50px",color:"red"},
    overridingStyles:{"margin-top":"50px"}
  },
  
})

以上就是本次介绍的全部相关知识点,感谢大家的学习和对三水点靠木的支持。

Javascript 相关文章推荐
Ext第一周 史上最强学习笔记---GridPanel(基础篇)
Dec 29 Javascript
js 对象是否存在判断
Jul 15 Javascript
深入理解JavaScript系列(6) 强大的原型和原型链
Jan 15 Javascript
通过JS自动隐藏手机浏览器的地址栏实现原理与代码
Jan 02 Javascript
JS+CSS制作DIV层可(最小化/拖拽/排序)功能实现代码
Feb 25 Javascript
JavaScript中的object转换成number或string规则介绍
Dec 31 Javascript
jquery插件ajaxupload实现文件上传操作
Dec 09 Javascript
简单介绍JavaScript数据类型之隐式类型转换
Dec 28 Javascript
巧用jQuery选择器提高写表单效率的方法
Aug 19 Javascript
新年快乐! javascript实现超级炫酷的3D烟花特效
Jan 30 Javascript
JS co 函数库的含义和用法实例总结
Apr 08 Javascript
vue实现下拉菜单树
Oct 22 Javascript
JS 事件机制完整示例分析
Jan 15 #Javascript
JS实现滑动插件
Jan 15 #Javascript
JS实现滑动导航效果
Jan 14 #Javascript
解决 window.onload 被覆盖的问题方法
Jan 14 #Javascript
vue quill editor 使用富文本添加上传音频功能
Jan 14 #Javascript
JavaScript事件冒泡机制原理实例解析
Jan 14 #Javascript
JS window对象简单操作完整示例
Jan 14 #Javascript
You might like
全国FM电台频率大全 - 26 西藏自治区
2020/03/11 无线电
php基于dom实现的图书xml格式数据示例
2017/02/03 PHP
phpstudy后门rce批量利用脚本的实现
2019/12/12 PHP
Jquery插件 easyUI属性汇总
2011/01/19 Javascript
javascript学习笔记(三)显示当时时间的代码
2011/04/08 Javascript
谈谈关于JavaScript 中的 MVC 模式
2013/04/11 Javascript
图片轮换效果实现代码(点击按钮停止执行)
2013/04/12 Javascript
js 验证身份证信息有效性
2014/03/28 Javascript
javascript实现控制div颜色
2015/07/07 Javascript
用JavaScript来美化HTML的select标签的下拉列表效果
2015/11/17 Javascript
实例讲解JavaScript中call、apply、bind方法的异同
2016/09/13 Javascript
前端JS面试中常见的算法问题总结
2016/12/23 Javascript
浅谈让你的代码更简短,更整洁,更易读的ES6小技巧
2018/10/25 Javascript
js中!和!!的区别与用法
2020/05/09 Javascript
[00:32]2018DOTA2亚洲邀请赛Newbee出场
2018/04/03 DOTA
[34:41]夜魇凡尔赛茶话会 第二期02:你画我猜
2021/03/11 DOTA
Python实现去除代码前行号的方法
2015/03/10 Python
Python 中的range(),以及列表切片方法
2018/07/02 Python
python 将print输出的内容保存到txt文件中
2018/07/17 Python
python远程调用rpc模块xmlrpclib的方法
2019/01/11 Python
详解Python网络框架Django和Scrapy安装指南
2019/04/01 Python
查看Python依赖包及其版本号信息的方法
2019/08/13 Python
python3获取控制台输入的数据的具体实例
2020/08/16 Python
python3.7.3版本和django2.2.3版本是否可以兼容
2020/09/01 Python
Python爬虫爬取有道实现翻译功能
2020/11/27 Python
基于HTML5的齿轮动画特效
2016/02/29 HTML / CSS
浅析border-radius如何兼容IE
2016/04/19 HTML / CSS
国培教师自我鉴定
2014/02/12 职场文书
成语的广告词
2014/03/19 职场文书
股东协议书范本
2014/04/14 职场文书
幼儿园中班评语大全
2014/04/17 职场文书
合伙协议书范本
2014/04/21 职场文书
2014年校长工作总结
2014/12/11 职场文书
汽车销售助理岗位职责
2015/04/14 职场文书
活动新闻稿范文
2015/07/17 职场文书
Python连续赋值需要注意的一些问题
2021/06/03 Python