使用Angular 7,我在组件.ts文件中创建了一个ngClass方法,效果很好。
我想要在所有组件中使用相同的方法而无需重新编写代码,但是我不确定该代码应该去哪里。我尝试将其放在app.component.ts中,但这没有用。
我可以在哪里放置ngClass方法,以便它对我所有组件都是全局的?
您可以使用服务
您从创建服务开始
export class CSSClassProvider{
constructor() { }
getDangerClass(params...) {
return { state: "rejected" }
}
}
将服务插入模块并使用它
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
@NgModule({
providers: [ CSSClassProvider ],
})
export class AppModule { }
希望有帮助。
例如,您可以创建文件cool-styles.ngclass.ts
并在其中导出代码。
export const CoolStyles = {
"someclass" : true,
"bg-white" : false
};
例如,您的文件可以包括用于逻辑检查的导入或例如来自env var的其他设置。
如果不是您要查找的内容,则可以考虑使用服务在任何地方提供对ngClass的访问。