我试图以Ng2组件样式“my-comp-style.scss”访问聚合物的mixin和vars属性。 即:
@apply(--shadow-elevation-2dp);
background: var(--primary-color, #666);
但不解释--shadow-elevation和--primary-color。有没有办法来解决这个问题 ?没有复制mixins和vars会很棒。
答案 0 :(得分:0)
这些链接可能会有所帮助:
来自Polymer团队的Rob讲述了如何使用Polymer + Saas。 https://www.youtube.com/watch?v=xA2hxpGS7yw
另一个Stack Overflow线程: How to use Sass inside a Polymer component
答案 1 :(得分:0)
当您未使用<style>
时,组件中引用的样式和外部样式表(包括CSS和SASS)将<head>
标记添加到ViewEncapsulation.Native
。
请记住,有些浏览器本身支持CSS变量,但没有浏览器支持CSS @apply
mixin。 Polymer使用ShadyCSS进行此处理。
Polymer 1.x期待<style is="custom-style"></style>
Polymer 2.x期待<custom-style><style></style></custom-style>
您可以编写一项服务,在<head>
中创建组件后扫描ngOnInit()
并添加is="custom-style"
或使用<custom-style>
打包以使ShadyCSS正常工作。
这是我在Origami中使用的策略,使Angular和Polymer 2样式协同工作。