Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 按自定义主题设置访问库中的$primary_Angular_Angular Material - Fatal编程技术网

Angular 按自定义主题设置访问库中的$primary

Angular 按自定义主题设置访问库中的$primary,angular,angular-material,Angular,Angular Material,我与nrwl/nx合作,拥有独立的库 在我的主应用程序中,我为材质定义了一个主题 现在在我的库中,我想使用这个主题设置的$primary color,而不导入主题。lib应该保持独立,并在使用其他主题的其他应用程序中工作 因此,我想在库中的组件中执行以下操作: libs/foo/.../bar.component/scss: .header { background-color: $primary; } 使用应用程序中定义的主题,在如下自定义主题中: apps/bar/custom-the

我与nrwl/nx合作,拥有独立的库

在我的主应用程序中,我为材质定义了一个主题

现在在我的库中,我想使用这个主题设置的$primary color,而不导入主题。lib应该保持独立,并在使用其他主题的其他应用程序中工作

因此,我想在库中的组件中执行以下操作:

libs/foo/.../bar.component/scss:
.header {
  background-color: $primary;
}
使用应用程序中定义的主题,在如下自定义主题中:

apps/bar/custom-theme.scss
...
$my-app-primary: mat-palette($mat-red);
$my-app-accent:  mat-palette($mat-green);
$my-app-warn:    mat-palette($mat-amber);

$my-app-theme: mat-light-theme((
  color: (
    primary: $my-app-primary,
    accent: $my-app-accent,
    warn: $my-app-warn,
  )
));

我使用@angular/material@10.0.2

背景色:mat color($my app primary)
获取您的颜色。我尝试过,但它抱怨它不知道
$my app primary
。此外,如果使用的其他主题不使用
$my app primary
,则这将不起作用。您应该在组件SCS中导入变量(@import…)。然后要使用2个或更多主题,请查看&。如果您有任何问题,我可以帮助您。@Myerffoeg我可以在项目中定义自定义变量并将它们导入库中,但我希望库是独立的,因此独立于自定义变量。我想使用所选主题的材质主题变量。