这个问题与这个问题相似,但不同之处足以创建一个新线程。
在处理angular 2 动画时,我无法弄清楚如何访问位于[project]\src\theme\variable.scss中的颜色变量。
假设[project]\src\theme\variable.scss在上面有这个:
$colors: (
primary: #387ef5,
secondary: #32db64,
...
);
现在在 Ionic 2/Angular 2 组件中,在@Component
注释中,我有这样的东西:
animations: [
trigger('changeBackgroundColor', [
state('active', style({
backgroundColor: [Some statement to define the active color]
})),
state('inactive', style({
backgroundColor: '#32db64'
})),
transition('* => inactive', animate('800ms ease')),
transition('* => active', animate('800ms ease')),
transition('inactive=> active', animate('800ms ease')),
transition('active=> inactive', animate('800ms ease')),
]),
]
现在我尝试了以下方法在字段中设置背景颜色[Some statement to define color active]
:
'#387ef5'
=> 这有效;'($colors,primary)'
=> 不工作'color($colors,primary)'
=>不工作'primary'
=> 不工作
每次它不起作用时,它都会抛出错误:Failed to execute 'animate' on 'Element': Partial keyframes are not supported.
;
我很惊讶我无法访问“variable.scss”中的变量,因为定义的语句backgroundColor
嵌入在style({})
语句中。而且我想象style({})
可以使用常规 CSS,这与我提到的另一个主题相反,其目的是访问 TypeScript 中的 CSS 值。
有没有人回答,或者可以就此启发我?