我正在尝试如何使用NativeScript
主题v3,但我一直在做一些简单的事情,比如根据主题设置背景颜色:
以下是我正在尝试的(使用推荐的colorize
mixin(:
@import "~@nativescript/theme/scss/variables";
.mything {
@include colorize($background-color: primary);
}
但这总是将背景设置为深色,当我切换主题时没有任何效果。
如果我尝试以下代码,它总是红色的,也遵循推荐的方法:
.mything {
background-color: red;
.ns-dark & {
background-color: green;
}
}
我做错什么了吗?
我刚刚找到了一种解决方案,可以解决这个问题,因为当我切换主题时,我可以让它发挥作用-然而,这似乎违背了使用colorize
mixin等的意义
.mything {
background-color: red;
}
:host-context(.ns-dark) .mything {
background-color: green;
}
或者:
.mything {
background-color: red;
:host-context(.ns-dark) & {
background-color: green;
}
}
我在这里发布这个,以防其他人对此感到困惑,而没有其他人回答。