Quasar v1 Notify插件自定义颜色(不使用Quasar调色板)问题
Quasar 1.x Notify 自定义样式(避开内置调色板)
可以通过自定义类或内联样式实现,你的代码没生效主要是因为样式优先级不足,以及对color属性的用法误解,以下是具体解决方案:
方法一:提升自定义类的样式优先级
Quasar Notify的默认样式优先级较高,直接写.test1会被覆盖,需要增强选择器优先级或使用!important:
方案1:增强选择器
在notify.vue中修改样式:
.q-notification.test1 { color: #effbf4; // 如需修改背景色,添加以下行 background-color: #2e7d32; }
方案2:使用!important(简单直接)
.test1 { color: #effbf4 !important; background-color: #2e7d32 !important; }
注册类型的代码保持不变:
Notify.registerType("success", { classes: "test1" });
如果想用你定义的SCSS变量$test2,需要确保变量能被当前组件样式访问到,比如在notify.vue的样式中引入变量文件:
@import "~@/quasar.variables.scss"; // 路径根据你的项目结构调整 .test1 { color: $test2 !important; }
方法二:直接使用内联样式
注册类型时通过style属性直接定义样式,优先级最高,无需担心样式覆盖:
Notify.registerType("success", { style: { color: "#effbf4", backgroundColor: "#2e7d32" } });
关键说明
- Quasar 1.x Notify的
color属性仅支持内置调色板的颜色名称(如primary、warning),无法直接传入自定义颜色值或SCSS变量名,这是你之前尝试color: "test2"无效的原因。
内容的提问来源于stack exchange,提问作者최서진
相关产品推荐
相关产品推荐

