此处为scss使用方法
一、vue2
核心::style="{'--color': bgColor}" 将样式变量和js变量关联
background-color: var(--color); 使用样式变量
<template> <view class="tabbar"> <view v-for="(item,index) in tabbarData" :key="index" class="item" @click="clickPage(item.url)" :style="{'--color': bgColor}"> <image :src="status==index?item.selected:item.unselected" mode=""> </image> <view class="text" :style="{color:status==index ? item.activeColor :item.defaultColor}"> {{item.text}} </view> </view> </view> </template> <script> export default { name: "", props: { bgColor: { type: String, default: '#fff' } } } </script> <style lang="scss" scoped> .tabbar { .item { &:nth-of-type(3) { border-radius: 50%; background-color: var(--color); } } } </style>
复制
二、vue3
核心:let fontcolor = ref('red');
color: v-bind(fontcolor); 使用样式变量
<template> <p>父组件</p> </template> <script setup lang="ts"> import { ref } from 'vue'; let fontcolor = ref('red'); </script> <style lang="scss" scoped> p{ color: v-bind(fontcolor); } </style>
复制