zoukankan      html  css  js  c++  java
  • VUE课程参考---11、class类绑定

    VUE课程参考---11、class类绑定

    一、总结

    一句话总结:

    vue中绑定class有数组语法和对象语法,数组语法的时候会依次将数组里面的元素解析到class里面,对象语法就是将键值对中的值为true的键添加到class中
    <div id="app">
        <!--1、数组语法-->
        <p :class="['red','big']">{{msg}}</p>
        <!--数组里面的三元表达式-->
        <p :class="['red',isBig?'big':'']">{{msg}}</p>
        <!--数组里面放对象-->
        <p :class="['italic',{red:true,big:isBig}]">{{msg}}</p>
        <p :class="['italic',class1]">{{msg}}</p>
    
    
        <!--2、对象语法-->
        <p :class="{red:true,'big':isBig}">{{msg}}</p>
        <!--对象在vue实例中-->
        <p :class="class1">{{msg}}</p>
    </div>
    <script src="../js/vue.js"></script>
    <script>
        let vm = new Vue({
            el: '#app',
            data: {
                msg: '我有一只小毛驴,我永远也不骑',
                isBig: true,
                class1: {red: true, big: true}
            }
        });
    </script>

    1、vue中绑定class的数组语法和对象语法?

    数组语法:<p :class="['red','big']">{{msg}}</p>:会依次将'red'和'big'解析到class里面
    对象语法:<p :class="{red:true,'big':isBig}">{{msg}}</p>:键值对的值为true,则将对应的属性名添加到class,为false则不添加

    2、数组语法注意?

    a、数组里面可以写三元表达式:<p :class="['red',isBig?'big':'']">{{msg}}</p>
    b、数组里面可以放对象:<p :class="['italic',{red:true,big:isBig}]">{{msg}}</p>

    3、vue中绑定class数据的时候解析数组的原理?

    数组语法:<p :class="['red','big']">{{msg}}</p>:会依次将'red'和'big'解析到class里面

    4、vue中绑定class数据的时候解析对象的原理?

    对象语法:<p :class="{red:true,'big':isBig}">{{msg}}</p>:键值对的值为true,则将对应的属性名添加到class,为false则不添加

    5、vue中绑定class数据的时候 数组语法扩展?

    a、数组里面可以写三元表达式:<p :class="['red',isBig?'big':'']">{{msg}}</p>
    b、数组里面可以放对象:<p :class="['italic',{red:true,big:isBig}]">{{msg}}</p>

    6、vue模板中解析数组和对象的特点(数据是否带引号的时候)?

    1、无论是数组还是对象,元素有引号就当做字符串解析,没带引号的就当做变量(js表达式)解析
    2、对象的键值对中的键一般不用带引号,但是如果键中有短号(例如big-ab),则需要带引号

    二、class类绑定

    博客对应课程的视频位置:

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>11、class类绑定</title>
     6     <style>
     7         .red {
     8             color: red;
     9         }
    10 
    11         .purple {
    12             color: purple;
    13         }
    14 
    15         .big {
    16             font-size: 30px;
    17         }
    18 
    19         .italic {
    20             font-style: italic;
    21         }
    22     </style>
    23 </head>
    24 <body>
    25 <!--
    26 
    27 标签上的class也是属性,绑定属性也是用v-bind
    28 
    29 vue中绑定class有数组语法和对象语法
    30 数组语法:
    31 <p :class="['red','big']">{{msg}}</p>:
    32 会依次将'red'和'big'解析到class里面
    33 
    34 对象语法:
    35 <p :class="{red:true,'big':isBig}">{{msg}}</p>:
    36 键值对的值为true,则将对应的属性名添加到class,为false则不添加
    37 
    38 
    39 数组语法扩展:
    40 a、数组里面可以写三元表达式:<p :class="['red',isBig?'big':'']">{{msg}}</p>
    41 b、数组里面可以放对象:<p :class="['italic',{red:true,big:isBig}]">{{msg}}</p>
    42 
    43 vue模板中解析数组和对象的特点
    44 1、无论是数组还是对象,元素有引号就当做字符串解析,没带引号的就当做变量(js表达式)解析
    45 2、对象的键值对中的键一般不用带引号,但是如果键中有短号(例如big-ab),则需要带引号
    46 
    47 -->
    48 <div id="app">
    49     <!--1、数组语法-->
    50     <p :class="['red','big']">{{msg}}</p>
    51     <!--数组里面的三元表达式-->
    52     <p :class="['red',isBig?'big':'']">{{msg}}</p>
    53     <!--数组里面放对象-->
    54     <p :class="['italic',{red:true,big:isBig}]">{{msg}}</p>
    55     <p :class="['italic',class1]">{{msg}}</p>
    56 
    57 
    58     <!--2、对象语法-->
    59     <p :class="{red:true,'big':isBig}">{{msg}}</p>
    60     <!--对象在vue实例中-->
    61     <p :class="class1">{{msg}}</p>
    62 </div>
    63 <script src="../js/vue.js"></script>
    64 <script>
    65     let vm = new Vue({
    66         el: '#app',
    67         data: {
    68             msg: '我有一只小毛驴,我永远也不骑',
    69             isBig: true,
    70             class1: {red: true, big: true}
    71         }
    72     });
    73 </script>
    74 </body>
    75 </html>

     
  • 相关阅读:
    html基础学习
    Git 内部原理
    SHA1
    生日攻击
    在使用bat 批处理 时将运行结果显示并保存到文件中 echo
    _vimrc
    b/s 起点
    收集几个html和element-ui的录入控件
    electron、vue.js、vuex、element-ui、sqlite3
    准备在electron上用vue,结果卡在了sqlite3
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/12728855.html
Copyright © 2011-2022 走看看