zoukankan      html  css  js  c++  java
  • class和style绑定

    在数据绑定中,一个常见需求是,将数据与元素的 class 列表,以及元素的 style 内联样式的操作绑定在一起。由于它们都是属性(attribute),因此我们可以使用 v-bind 来处理它们:只需从表达式中计算出最终的字符串。然而,处理字符串拼接,既麻烦又容易出错。为此,在使用 v-bind 指令来处理 class 和 style 时,Vue 对此做了特别的增强。表达式除了可以是字符串,也能够是对象和数组。

    与HTML的class绑定(Binding HTML Classes)

    对象语法

    向 v-bind:class 传入一个对象,来动态地切换 class:

    <div v-bind:class="{active: isActive}"></div>
    

    上述语法意味着,active 这个 class 的存在与否,取决于 isActive 这个 data 属性的 truthy 值。  

    这样,可以通过在对象中添加多个字段,来切换多个 class。此外,v-bind:class 指令也可以和普通 class 属性共存。所以,给定以下模板:

    <div class="static"
         v-bind:class="{active: isActive,'text-danger':hasError}">
    </div>  

    然后,给定一下data:

    <body>
    <div class="static"
         v-bind:class="{active: isActive,'text-danger':hasError}">
    </div>
    <script src="https://cdn.jsdelivr.net/npm/vue"></script>
    <script>
        var vm = new Vue({
            el: '.static',
            data: {
                isActive: true,
                hasError: false
            }
        })
    </script>
    </body>  

    将会熏染为:

    <div class="static active"></div>
    

    每当 isActive 或 hasError 发生变化,class 列表就会相应地更新。例如,如果 hasError 值是 true,class 列表会变为 "static active text-danger"。  

    绑定对象,也可以无需内联,而是外部引用 data: 

    <div v-bind:class="classObject"></div>
    
    data: {
      classObject: {
        active: true,
        'text-danger': false
      }
    }
    

    (内联、外部引用)这两种方式的渲染结果相同。我们还可以将 class 和 style 与某个 computed 属性绑定在一起,此 computed 属性所对应的 getter 函数需要返回一个对象。这是一种常用且强大的用法:  

    <div v-bind:class="classObject"></div>
    
    data: {
      isActive: true,
      error: null
    },
    computed: {
      classObject: function () {
        return {
          active: this.isActive && !this.error,
          'text-danger': this.error && this.error.type === 'fatal'
        }
      }
    }  

    未完待续  

      

  • 相关阅读:
    JAVA 冒泡排序代码
    随机数生成机制
    C#学习成果 兔子计算
    C#学习成果 质数判断
    3.24学习成果
    制作登录界面,登录成功后把用户名放在session里,在第3个页面读取session显示用户名
    编写一个简易的留言薄,实现添加留言和显示留言内容等功能
    编写一个jsp程序,实现用户登录,当用户输入的用户或密码错误时,将页面重定向到错误提示页,并在该页面显示30秒后 自动回到用户登录界面
    jsp输出当前时间
    jsp输出九九乘法表
  • 原文地址:https://www.cnblogs.com/Black-rainbow/p/9362334.html
Copyright © 2011-2022 走看看