zoukankan      html  css  js  c++  java
  • Vue中Class与Style如何动态绑定

    Class 可以通过对象语法和数组语法进行动态绑定:

    • 对象语法:
    <div v-bind:class="{ active: isActive, 'text-danger': hasError }"></div>
    
    data: {
      isActive: true,
      hasError: false
    }
    • 数组语法:
    <div v-bind:class="[isActive ? activeClass : '', errorClass]"></div>
    
    data: {
      activeClass: 'active',
      errorClass: 'text-danger'
    }

    Style 也可以通过对象语法和数组语法进行动态绑定:

    • 对象语法:
    <div v-bind:style="{ color: activeColor, fontSize: fontSize + 'px' }"></div>
    
    data: {
      activeColor: 'red',
      fontSize: 30
    }
    • 数组语法:
    <div v-bind:style="[styleColor, styleSize]"></div>
    
    data: {
      styleColor: {
         color: 'red'
       },
      styleSize:{
         fontSize:'23px'
      }
    }
    • 定义变量法:

    通过判断一个条件去改变样式在项目中会经常遇到,此时我们可以适应给想要绑定的class定义一个变量进行动态切换class。

    <div class=“className”  :class={newclass : variable }>

    我们可以将这个variable 在我们的data里面设置成false(默认不显示)

    data () {

    variable :false

    }

    之后给newclass 编写我们想要动态变动的样式

    .className{

    color: red;

    }

    .newclass {

    color: black

    }

    现在是因为newclass 是定义的变量为Flase所以样式为className定义的内容

    在我们js内容部分:

    if(条件){

    this.variable =true

    }

    即可通过条件来动态的切换样式。

  • 相关阅读:
    angularjs+ionic的app端分页和条件
    js中对象的自定义排序
    angularJS入门笔记
    SpringBoot学习历程
    页面渲染流程
    跨域问题
    jquery知识点结合使用
    对bootstrap模态框的小尝试
    登录页面两端对齐的样式问题
    输入两个数字,将比较结果输出到页面
  • 原文地址:https://www.cnblogs.com/taxpolat/p/11383214.html
Copyright © 2011-2022 走看看