Vue

vue中的样式绑定例子

2018-07-10  本文已影响0人  程序员同行者

vue中的样式绑定例子

<!DOCTYPE html>
<html>
<head>
    <title>vue中的样式绑定</title>
    <script src="./vue.js"></script>
    <style>
        .activated {
            color: red
        }
    </style>
</head>
<body>
    <div id='app'>
        <!-- //写法一 -->
        <div @click='handleDivClick'
             :class="{activated: isActivated}"
            >
            Hello World
        </div>
    
    </div>

    <div id='app-1'>
        <!-- //写法二 -->
        <!-- :class="[activated] 可以写成数组的方式 ,可以有多个-->
        <div @click='handleClassClick'
             :class="[activated,activatedOne]"
            >
            Hello World1
        </div>
    
    </div>

        <div id='app-2'>
            <!-- 这里可以写成数组的方式,也可以直接写对象表达式 -->
            <!-- 写法一  :style="styleObj" -->
            <!-- 写法二  :style="[styleObj, {fontSize: '20px'}]" -->
        <div @click='handlestyleClick'
             :style="[styleObj, {fontSize: '20px'}]"
            >
            Hello World2
        </div>
    
    </div>

<script>
    var vm =  new Vue({
        el:'#app',
        data: {
            isActivated :false
        },
        methods:{
            handleDivClick: function() {
                console.log(this.isActivated);
                this.isActivated = !this.isActivated;
            }
        }
    
    })

    var vm1 = new Vue({
        el:'#app-1',
        data: {
            activated: "",
            activatedOne: "activated-one"
        },
        methods: {
            handleClassClick:function() {
                this.activated = this.activated ==="activated" ? "" : "activated";
            }
        }
    })


    var vm2 = new Vue({
        el: '#app-2',
        data: {
            styleObj:{
                color: "black"
            }
        },
        methods:{
            handlestyleClick: function(){
                this.styleObj.color = this.styleObj.color === "black" ? "red" : "black";

            }
        }
    })
</script>
</body>
</html>
上一篇 下一篇

猜你喜欢

热点阅读