• VUE Class列表样式数绑定案例


    VUE Class列表样式数绑定案例

    Class 与 Style 绑定 v-bind

    通过class列表和style指定样式是数据绑定的一个常见需求,他都是元素属性,都用 v-bind 处理,其中表达式结果的类型可以是:字符串对象数组

    语法格式

    class 的表达式可以为:

     v-bind:class = '表达式'   或者  :class = '表达式'
    
     字符串 :class = "activeClass"
     对象   :class = "{ active : isActive , error : hasError }"
     数组   :class = "[ 'active' , 'error' ]"  注意加上单引号,不然获取不到data中的值
    

    style 的表达式一般为对象

    :style = "{ color : activeColor , fontSize : fontSize + 'px'  }"
    注意,对象中的value值 activeColor 和 fontSize 是data的属性。
    

    案例

    class

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>04-Class与Style绑定</title>
        <style>
            .active {
                color: green;
            }
            .delete {
                background: red;
            }
            .error {
                font-size: 35px;
            }
        </style>
    </head>
    <body>
        <div id="app">
            <h3>Class绑定 v-bind:class 或者 :class</h3>
            <p class="active">原始的绑定方式:class="active"</p>
            <p v-bind:class="activeClass">v-bind:class="activeClass" 字符串表达式</p>
            <!-- key值是样式名称,value是data中绑定的属性,比如下面,当isDelete为true的时候,delete样式就会被渲染 -->
            <p :class="{delete:isDelete, error:isError}">对象表达式</p>
            <!-- 数组中填写的直接是样式名称,单引号必须写 -->
            <p :class="['active','error']">数组表达式</p>
        </div>
        <script src="./node_modules/vue/dist/vue.js"></script>
        <script>
            new Vue({
                el: '#app',
                data: {
                    activeClass: 'active',
                    isDelete: true,
                    isError:true
                }
            })
        </script>
    </body>
    </html>
    

    在这里插入图片描述

    style

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>04-Class与Style绑定</title>
        <style>
            .active {
                color: green;
            }
    
            .delete {
                background: red;
            }
    
            .error {
                font-size: 35px;
            }
        </style>
    </head>
    
    <body>
        <div id="app">
            <h3>Class绑定 v-bind:class 或者 :class</h3>
            <p class="active">原始的绑定方式:class="active"</p>
            <p v-bind:class="activeClass">v-bind:class="activeClass" 字符串表达式</p>
            <!-- key值是样式名称,value是data中绑定的属性,比如下面,当isDelete为true的时候,delete样式就会被渲染 -->
            <p :class="{delete:isDelete, error:isError}">对象表达式</p>
            <!-- 数组中填写的直接是样式名称,单引号必须写 -->
            <p :class="['active','error']">数组表达式</p>
    
            <h3>Style绑定 v-bind:style 或者 :style</h3>
            <!-- 注意,在style绑定的时候,值是css属性值,全部改为驼峰命名,不然报错 -->
            <p :style="{color:activeColor,fontSize:fontSize + 'px'}">Style样式绑定</p>
    
        </div>
        <script src="./node_modules/vue/dist/vue.js"></script>
        <script>
            new Vue({
                el: '#app',
                data: {
                    activeClass: 'active',
                    isDelete: true,
                    isError: true,
                    activeColor: "blue",
                    fontSize: 20
                }
            })
        </script>
    
    </body>
    
    </html>
    

    在这里插入图片描述

    源码位置:https://gitee.com/wjw1014/vue_learning_course

  • 相关阅读:
    RDD弹性分布式数据集的基本操作
    spark-shell的Scala的一些方法详解
    浅谈架构
    关于MapReduce二次排序的一点解答
    mysql 和 hive 和分布式zookeeper和HBASE分布式安装教程
    2018暑假总结
    暑假总结07
    2018暑假总结06
    2018暑假总结05
    2018暑假总结04
  • 原文地址:https://www.cnblogs.com/wjw1014/p/13384479.html
Copyright © 2020-2023  润新知