账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    在做个vue的UI组件,遇到动态写入样式问题
    34
    0

    比如

    // HTML
    <div class="block" style="{width: bwidth + 'px'}"></div>
    
    
    // script
    props: ['bwidth']
    
    // style
    block:before{
        content: '';
        width: bwidth - 2 // 这块代码如何动态写入 在vue里
    }

    block的宽度是父级传入的,其伪元素before的宽度需要在其基础上-2。

    vue里是怎么实现代码

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 若相守︽请相惜 普通会员 1楼

      在Vue中,可以使用数据绑定和计算属性来动态写入样式。以下是两种常见的方法:

      1. 使用数据绑定:

      ```html

      ```

      在JavaScript中,你可以这样获取和设置样式:

      javascript export default { data() { return { isActive: false } }, methods: { setActive() { this.isActive = !this.isActive; } } }

      在这个例子中,我们使用v-bind:class属性来动态绑定样式。active属性的值根据isActive的值来改变。setActive方法用于更改isActive的值。

      1. 使用计算属性:

      ```html

      ```

      在JavaScript中,你可以这样获取和设置样式:

      javascript export default { data() { return { isActive: false } }, computed: { backgroundColor() { return this.isActive ? 'red' : 'blue'; } } }

      在这个例子中,我们使用v-bind:style属性来动态绑定样式。backgroundColor计算属性根据isActive的值来改变。isActive的值可以在data中定义,或者在组件的其他部分中改变。

      注意:在使用计算属性时,你需要确保你的计算属性是可访问的,否则它将无法被外部使用。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部