如何在 Vuetify 的每个组件中应用特定颜色?
How can I apply certain color in every component in Vuetify?
我可以将某种颜色应用于项目中的整个组件吗?我的意思是,不要在每个标签上单独附加 class,例如:
<v-icon left>mdi-phone-in-talk</v-icon>
<div class="pink darken-2 grey--text">tel</div>
</v-row>
<v-row align="center" class="mx-0 my-2">
<v-icon left>mdi-location-enter</v-icon>
<div class="pink darken-2 grey--text">loc</div>
</v-row>
<v-row align="center" class="mx-0 my-2">
<v-icon left>mdi-discord</v-icon>
<div class="pink darken-2 grey--text">name</div>
</v-row>
<v-row align="center" class="mx-0 my-2">
<v-icon left>mdi-email</v-icon>
<div class="pink darken-2 grey--text">mail</div>
</v-row>
// every div tag has "pink darken-2", seems quite WET
我想通过在特定范围的组件上应用某种颜色或在项目中的整个模板(例如主题)上应用某种颜色来实现此目标。有什么好的建议吗?
我知道我可以使用“主题配置”,但我不确定我是否可以应用自定义色调(如按钮的背景颜色)。
** 最佳:将某种颜色应用于项目中的整个组件,每个 classes 没有额外的代码 **
我只想创建一个可以在任何地方使用的新组件。
@/components/PinkGreyText.vue
<template>
<div class="pink darken-2 grey--text">
<slot />
</div>
</template>
现在注册组件:https://vuejs.org/v2/guide/components-registration.html
现在您应该可以在任何地方使用它了,下面是您使用上面的自定义组件重写的原始代码段。
<v-row align="center" class="mx-0 my-2">
<v-icon left>mdi-phone-in-talk</v-icon>
<pink-grey-text>tel</pink-grey-text>
</v-row>
<v-row align="center" class="mx-0 my-2">
<v-icon left>mdi-location-enter</v-icon>
<pink-grey-text>loc</pink-grey-text>
</v-row>
<v-row align="center" class="mx-0 my-2">
<v-icon left>mdi-discord</v-icon>
<pink-grey-text>name</pink-grey-text>
</v-row>
<v-row align="center" class="mx-0 my-2">
<v-icon left>mdi-email</v-icon>
<pink-grey-text>mail</pink-grey-text>
</v-row>
我可以将某种颜色应用于项目中的整个组件吗?我的意思是,不要在每个标签上单独附加 class,例如:
<v-icon left>mdi-phone-in-talk</v-icon>
<div class="pink darken-2 grey--text">tel</div>
</v-row>
<v-row align="center" class="mx-0 my-2">
<v-icon left>mdi-location-enter</v-icon>
<div class="pink darken-2 grey--text">loc</div>
</v-row>
<v-row align="center" class="mx-0 my-2">
<v-icon left>mdi-discord</v-icon>
<div class="pink darken-2 grey--text">name</div>
</v-row>
<v-row align="center" class="mx-0 my-2">
<v-icon left>mdi-email</v-icon>
<div class="pink darken-2 grey--text">mail</div>
</v-row>
// every div tag has "pink darken-2", seems quite WET
我想通过在特定范围的组件上应用某种颜色或在项目中的整个模板(例如主题)上应用某种颜色来实现此目标。有什么好的建议吗?
我知道我可以使用“主题配置”,但我不确定我是否可以应用自定义色调(如按钮的背景颜色)。
** 最佳:将某种颜色应用于项目中的整个组件,每个 classes 没有额外的代码 **
我只想创建一个可以在任何地方使用的新组件。
@/components/PinkGreyText.vue
<template>
<div class="pink darken-2 grey--text">
<slot />
</div>
</template>
现在注册组件:https://vuejs.org/v2/guide/components-registration.html
现在您应该可以在任何地方使用它了,下面是您使用上面的自定义组件重写的原始代码段。
<v-row align="center" class="mx-0 my-2">
<v-icon left>mdi-phone-in-talk</v-icon>
<pink-grey-text>tel</pink-grey-text>
</v-row>
<v-row align="center" class="mx-0 my-2">
<v-icon left>mdi-location-enter</v-icon>
<pink-grey-text>loc</pink-grey-text>
</v-row>
<v-row align="center" class="mx-0 my-2">
<v-icon left>mdi-discord</v-icon>
<pink-grey-text>name</pink-grey-text>
</v-row>
<v-row align="center" class="mx-0 my-2">
<v-icon left>mdi-email</v-icon>
<pink-grey-text>mail</pink-grey-text>
</v-row>