美文网首页
Vue绑定class与绑定内联样式--v-bind

Vue绑定class与绑定内联样式--v-bind

作者: wenmingxing | 来源:发表于2020-02-03 21:05 被阅读0次

1. 绑定class--对象语法

v-bind:class设置一个对象,可以动态切换class

<!-- 绑定class-对象语法 -->
<body>
    <div id="app">
        <!-- 类active依赖于数据isActive,当其为true时,div拥有类名Active -->
        <div :class="{'active': isActive}"></div>
        
        <!-- 对象中也可以传入多个属性,动态切换class -->
        <!-- <div class="static" :class="{'active':isActive, 'error':isError}"></div> -->
    </div>

    <script src = "https://unpkg.com/vue/dist/vue.min.js"></script>
    <script>
        var app = new Vue({
            el: '#app',
            data: {
                isActive: true,
                isError: false,
            },
        })
    </script>
</body>

:class的表达式过长或逻辑复杂时,还可以绑定一个计算属性

<!-- 绑定class-对象语法-绑定计算属性 -->
<body>
    <div id="app">
        <div :class="classes"></div>
    </div>

    <script src = "https://unpkg.com/vue/dist/vue.min.js"></script>
    <script>
        var app = new Vue({
            el: '#app',
            data: {
                isActive: true,
                isError: null,
            },

            computed: {
                classes: function() {
                    return {
                        active: this.isActive && !this.error,
                        'text-fail': this.error && this.error.type === '',
                    }
                }
            }
        })
    </script>
</body>  

2. 绑定class--数组语法

当需要应用多个class时,可以使用数组语法,给:class绑定一个数组,应用一个class列表:

<!-- 绑定class-数组语法 -->
<body>
    <div id="app">
        <!-- 结果为拥有active与error两个类名 -->
        <div :class="[activeCls, errorCls]"></div>
    </div>

    <script src = "https://unpkg.com/vue/dist/vue.min.js"></script>
    <script>
        var app = new Vue({
            el: '#app',
            data: {
                activeCls: 'active',
                errorCls: 'error',
            },
        })
    </script>
</body>  

3. 绑定内联样式

使用:style可以给元素绑定内联样式,与:class类似,也有对象语法和数组语法。

参考

  1. 《Vue.js实战》

相关文章

  • 【Vue】 绑定Class与Style && 条件渲染

    操作元素的class列表和内联样式Style是数据绑定的常见需求,通过 v-bind绑定Class列表与内联样式S...

  • Vue.js教程_4

    操作元素的class列表和内联样式的数据绑定:使用v-bind和style与class结合。v-bind也可与操作...

  • Vue绑定对象和数组

    class列表和内联样式style都是属性,所以可以使用v-bind动态绑定 v-bind:class="{...

  • Vue绑定class与绑定内联样式--v-bind

    1. 绑定class--对象语法 为v-bind:class设置一个对象,可以动态切换class: 当:class...

  • Vue.js学习笔记

    样式绑定:1.class对象绑定 2.class数组绑定 3.内联style 对象绑定4.内联style 数组绑定...

  • Class与Style绑定

    1.绑定HTML Class 2.绑定内联样式 v-bind:style会自动为某些CSS属性添加特定前缀,2.3...

  • Day9:Vue文档精读3——渲染&事件

    class与style的绑定 绑定HTML Class 对象语法 数组语法 用在组件上 绑定内联样式 对象语法 数...

  • v-bind 及 class 与 style 绑定

    class的绑定 对象语法 数组语法 数组语法中可以使用对象语法 style的绑定 绑定内联样式与绑定class的...

  • Vue绑定内联样式

    使用 v-bind:style 可以给元素绑定内联样式,方法与:class类似,也有对象语法和数组语法,看起来很直...

  • Vue基础指令

    Vue循环指令 Vue绑定指令: v-bind:style,v-bind:class: v-model双向数据绑定...

网友评论

      本文标题:Vue绑定class与绑定内联样式--v-bind

      本文链接:https://www.haomeiwen.com/subject/wgbkxhtx.html