传智黑马39期WEB前端教程-Vue基础-Vue指令-vue中通过属性绑定为元素设置c

vue中通过属性绑定为元素设置c

1.进入目录 DEMO,新建文件 7.html

2.进入目录 DEMO,修改文件 7.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="lib/vue-2.4.0.js"></script>
    <style>
        .red {
            color:red;
        }

        .thin {
            font-weight:200;
        }

        .italic {
            font-style:italic;
        }

        .active {
            letter-spacing:0.5em;
        }
    </style>
</head>
<body>
    <div id="app">
        <h1 class="red thin">这是一个很大很大的H1,大到无法想象</h1>
    </div>

    <script>
        var vm = new Vue({
            el:'#app',
            data:{},
            methods:{}
        });
    </script>
</body>
</html>

3.看浏览效果

4.进入目录 DEMO,修改文件 7.html,使用 v-bind

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="lib/vue-2.4.0.js"></script>
    <style>
        .red {
            color:red;
        }

        .thin {
            font-weight:200;
        }

        .italic {
            font-style:italic;
        }

        .active {
            letter-spacing:0.5em;
        }
    </style>
</head>
<body>
    <div id="app">
        <!-- <h1 class="red thin">这是一个很大很大的H1,大到无法想象</h1> -->

        <!-- 第一种使用方式,直接传递一个数组,注意:这里的 class 需要使用 v-bind 做数据绑定 -->
        <h1 :class="['red', 'thin', 'italic']">这是一个很大很大的H1,大到无法想象</h1>     
    </div>

    <script>
        var vm = new Vue({
            el:'#app',
            data:{},
            methods:{}
        });
    </script>
</body>
</html>

5.看浏览效果  

6.进入目录 DEMO,修改文件 7.html,在数组中使用三元表达式

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="lib/vue-2.4.0.js"></script>
    <style>
        .red {
            color:red;
        }

        .thin {
            font-weight:200;
        }

        .italic {
            font-style:italic;
        }

        .active {
            letter-spacing:0.5em;
        }
    </style>
</head>
<body>
    <div id="app">
        <!-- <h1 class="red thin">这是一个很大很大的H1,大到无法想象</h1> -->

        <!-- 第一种使用方式,直接传递一个数组,注意:这里的 class 需要使用 v-bind 做数据绑定 -->
        <!-- <h1 :class="['red', 'thin', 'italic']">这是一个很大很大的H1,大到无法想象</h1>      -->
    
        <!-- 在数组中使用三元表达式 -->
        <h1 :class="['red', 'thin', 'italic', flag?'active':'']">这是一个很大很大的H1,大到无法想象</h1> 
    </div>

    <script>
        var vm = new Vue({
            el:'#app',
            data:{
                flag:true
            },
            methods:{}
        });
    </script>
</body>
</html>

7.测试

8.进入目录 DEMO,修改文件 7.html,使用对象代替三元表达式

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="lib/vue-2.4.0.js"></script>
    <style>
        .red {
            color:red;
        }

        .thin {
            font-weight:200;
        }

        .italic {
            font-style:italic;
        }

        .active {
            letter-spacing:0.5em;
        }
    </style>
</head>
<body>
    <div id="app">
        <!-- <h1 class="red thin">这是一个很大很大的H1,大到无法想象</h1> -->

        <!-- 第一种使用方式,直接传递一个数组,注意:这里的 class 需要使用 v-bind 做数据绑定 -->
        <!-- <h1 :class="['red', 'thin', 'italic']">这是一个很大很大的H1,大到无法想象</h1>      -->
    
        <!-- 在数组中使用三元表达式 -->
        <!-- <h1 :class="['red', 'thin', 'italic', flag?'active':'']">这是一个很大很大的H1,大到无法想象</h1>  -->

        <!-- 在数组中使用对象来代替三元表达式,提高代码的可读性 -->
        <h1 :class="['red', 'thin', 'italic', {'active':flag}]">这是一个很大很大的H1,大到无法想象</h1>
    </div>

    <script>
        var vm = new Vue({
            el:'#app',
            data:{
                flag:false
            },
            methods:{}
        });
    </script>
</body>
</html>

9.进入目录 DEMO,修改文件 7.html,换一种写法

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="lib/vue-2.4.0.js"></script>
    <style>
        .red {
            color:red;
        }

        .thin {
            font-weight:200;
        }

        .italic {
            font-style:italic;
        }

        .active {
            letter-spacing:0.5em;
        }
    </style>
</head>
<body>
    <div id="app">
        <!-- <h1 class="red thin">这是一个很大很大的H1,大到无法想象</h1> -->

        <!-- 第一种使用方式,直接传递一个数组,注意:这里的 class 需要使用 v-bind 做数据绑定 -->
        <!-- <h1 :class="['red', 'thin', 'italic']">这是一个很大很大的H1,大到无法想象</h1>      -->
    
        <!-- 在数组中使用三元表达式 -->
        <!-- <h1 :class="['red', 'thin', 'italic', flag?'active':'']">这是一个很大很大的H1,大到无法想象</h1>  -->

        <!-- 在数组中使用对象来代替三元表达式,提高代码的可读性 -->
        <!-- <h1 :class="['red', 'thin', 'italic', {'active':flag}]">这是一个很大很大的H1,大到无法想象</h1> -->
        
        <!-- 在为class使用v-bind绑定对象的时候,对象的属性是类名,由于对象的属性可能带引号,也可不带引号,所以,我这里没有引号,属性的值是一个标识符 -->
        <h1 :class="{red:true, thin:true, italic:false, active:false}">这是一个很大很大的H1,大到无法想象</h1>
    </div>

    <script>
        var vm = new Vue({
            el:'#app',
            data:{
                flag:false
            },
            methods:{}
        });
    </script>
</body>
</html>

10.浏览器测试

11.进入目录 DEMO,修改文件 7.html,换一种写法 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="lib/vue-2.4.0.js"></script>
    <style>
        .red {
            color:red;
        }

        .thin {
            font-weight:200;
        }

        .italic {
            font-style:italic;
        }

        .active {
            letter-spacing:0.5em;
        }
    </style>
</head>
<body>
    <div id="app">
        <!-- <h1 class="red thin">这是一个很大很大的H1,大到无法想象</h1> -->

        <!-- 第一种使用方式,直接传递一个数组,注意:这里的 class 需要使用 v-bind 做数据绑定 -->
        <!-- <h1 :class="['red', 'thin', 'italic']">这是一个很大很大的H1,大到无法想象</h1>      -->
    
        <!-- 在数组中使用三元表达式 -->
        <!-- <h1 :class="['red', 'thin', 'italic', flag?'active':'']">这是一个很大很大的H1,大到无法想象</h1>  -->

        <!-- 在数组中使用对象来代替三元表达式,提高代码的可读性 -->
        <!-- <h1 :class="['red', 'thin', 'italic', {'active':flag}]">这是一个很大很大的H1,大到无法想象</h1> -->
        
        <!-- 在为class使用v-bind绑定对象的时候,对象的属性是类名,由于对象的属性可能带引号,也可不带引号,所以,我这里没有引号,属性的值是一个标识符 -->
        <h1 :class="classObj">这是一个很大很大的H1,大到无法想象</h1>
    </div>

    <script>
        var vm = new Vue({
            el:'#app',
            data:{
                flag:false,
                classObj: {red:true, thin:true, italic:false, active:false}
            },
            methods:{}
        });
    </script>
</body>
</html>

 

posted on 2019-11-05 13:47  herisson_pan  阅读(11)  评论(0)    收藏  举报

导航