Vue绑定Style和Class写法

vue2写法
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
        <script src="../js/vue.js"></script>
        <style>
            .aa {
                background: green;
            }
            .bb {
                background: yellow;
            }
            .cc {
                background: pink;
            }
            .dd {
                background: blue;
            }
        </style>
    </head>
    <body>
        <div id="app">
            <div :class="classobj">class绑定对象</div>
            <div :class="classarr">class绑定数组</div>

            <div :style="styleobj">style绑定对象</div>
            <div :style="stylearr">style绑定数组</div>
        </div>
        <script>
            var vm = new Vue({
                data: {
                    classobj: {
                        aa: true,
                        bb: true,
                        cc: false,
                    },
                    classarr: ['aa', 'bb'],
                    styleobj: {
                        backgroundColor: 'red',
                    },
                    stylearr: [{ backgroundColor: 'green' }],
                },
            }).$mount('#app');
            // Vue.set(对象,属性,属性值) 例如:Vue.set(vm.classobj,dd,true)
            // vm.classarr.push('dd') 
            // vm.stylearr.push({fontSize:'20px'})
        </script>
    </body>
</html>

vue3
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
        <script src="../js/vue.global.js"></script>
    </head>
    <style>
        .aa {
            background: green;
        }
        .bb {
            background: yellow;
        }
        .cc {
            background: pink;
        }
        .dd {
            background: blue;
        }
    </style>
    <body>
        <div id="app">
            {{name}}

            <div :class="classobj">动态切换class-对象写法</div>

            <button @click="addClass">addClass</button>
        </div>

        <script>
            var obj = {
                data() {
                    return {
                        name: 'ly',
                        classobj: {
                            aa: true,
                            bb: true,
                            cc: false,
                        },
                    };
                },
                methods: {
                    addClass() {
                        this.classobj.dd = true;
                    },
                },
            };
            const app = Vue.createApp(obj).mount('#app');
        </script>
    </body>
</html>
posted @   我也有梦想呀  阅读(4)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
历史上的今天:
2022-10-25 SpringBoot整合Swagger3
点击右上角即可分享
微信分享提示