vue3状态驱动动态css

-

vue3单文件组件的 <style> 标签可以通过 v-bind 这一 CSS 函数将 CSS 的值关联到动态的组件状态上:

template

<div class="dynamicClass"></div>

script

    const theme = reactive({
        border: '1px solid red',
        background: 'pink'
      });
      setInterval(() => {
        if (theme.background === 'pink') {
          theme.border = '1px solid green';
          theme.background = 'black';
        } else {
          theme.border = '1px solid red';
          theme.background = 'pink';
        }
      }, 500)

style

.dynamicClass{
  width: 300px;
  height: 300px;
  border: v-bind('theme.border');
  background: v-bind('theme.background');
}

 

 

 

 

 

-

posted @ 2022-06-03 13:49  古墩古墩  Views(463)  Comments(0Edit  收藏  举报