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 相关文章推荐
网页里控制图片大小的相关代码
Jun 25 Javascript
css transform 3D幻灯片特效实现步骤解读
Mar 27 Javascript
浅谈EasyUI中编辑treegrid的方法
Mar 01 Javascript
JavaScript事件委托实例分析
May 26 Javascript
js中获取jsp表单中radio类型的值简单实例
Aug 15 Javascript
ionic进入多级目录后隐藏底部导航栏(tabs)的完美解决方案
Nov 23 Javascript
详解在Vue中有条件地使用CSS类
Sep 30 Javascript
Angular实现预加载延迟模块的示例
Oct 12 Javascript
jQuery事件多次绑定与解绑问题实例分析
Feb 19 jQuery
vue基础之事件简写、事件对象、冒泡、默认行为、键盘事件实例分析
Mar 11 Javascript
JavaScript HTML DOM元素 节点操作汇总
Jul 29 Javascript
vuecli项目构建SSR服务端渲染的实现
Oct 30 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
生成静态页面的PHP类
2006/11/25 PHP
php向js函数传参的几种方法
2014/08/10 PHP
UPUPW 更新 64 位 Apache 系列 PHP 7.0 正式版
2015/12/08 PHP
PHP中利用sleep函数实现定时执行功能实现代码
2016/08/25 PHP
PHP错误提示It is not safe to rely on the system……的解决方法
2019/03/25 PHP
laravel 实现划分admin和home 模块分组
2019/10/15 PHP
thinkphp框架表单数组实现图片批量上传功能示例
2020/04/04 PHP
nicejforms——美化表单不用愁
2007/02/20 Javascript
Ajax+Json 级联菜单实现代码
2009/10/27 Javascript
ajax 缓存 问题 requestheader
2010/08/01 Javascript
jQeury淡入淡出需要注意的问题
2010/09/08 Javascript
js动态生成指定行数的表格
2013/07/11 Javascript
js如何实现设计模式中的模板方法
2013/07/23 Javascript
js如何获取object类型里的键值
2014/02/18 Javascript
Javascript 绘制 sin 曲线过程附图
2014/08/21 Javascript
2014年最火的Node.JS后端框架推荐
2014/10/27 Javascript
基于JavaScript如何制作遮罩层对话框
2016/01/26 Javascript
JavaScript数据存储 Cookie篇
2016/07/02 Javascript
input file上传 图片预览功能实例代码
2016/10/25 Javascript
JS数组交集、并集、差集的示例代码
2017/08/23 Javascript
JS点击图片弹出文件选择框并覆盖原图功能的实现代码
2017/08/25 Javascript
13 个npm 快速开发技巧(推荐)
2019/07/04 Javascript
解析vue、angular深度作用选择器
2019/09/11 Javascript
python中xrange用法分析
2015/04/15 Python
Python yield 使用方法浅析
2017/05/20 Python
Python3实现发送QQ邮件功能(文本)
2017/12/15 Python
Python实现的基于优先等级分配糖果问题算法示例
2018/04/25 Python
python实现Zabbix-API监控
2018/09/17 Python
python+ffmpeg批量去视频开头的方法
2019/01/09 Python
全球精选男装和家居用品:Article
2020/04/13 全球购物
大学生专业个人学习的自我评价
2013/10/26 职场文书
优秀班集体获奖感言
2014/02/03 职场文书
2014年敬老院工作总结
2014/12/08 职场文书
铁人观后感
2015/06/16 职场文书
《观察物体》教学反思
2016/02/17 职场文书
干货:如何写好工作总结报告!
2019/05/10 职场文书