模板解析错误:无法绑定到 'ng-class',因为它不是 Angular 中的已知原生 属性 2
Template parse errors: Can't bind to 'ng-class' since it isn't a known native property in Angular 2
我正在尝试根据 Angular 2.0.0-beta.15 中的布尔值 'isLoginPage' 有条件地在 img 属性上应用 CSS 样式。 html的部分如下:
<a class="navbar-brand" href="#/">
<img src="/src/resources/images/logo.png" [ng-class]="{logoStyle: isLoginPage, navLogoStyle: !isLoginPage}" /></a>
logoStyle 和 navLogoStyle 在 css class 中提到,并在 html 主页面中添加。在相应的组件中,我设置了 isLoginPage 的值,如下所示:
import {Component, Input} from 'angular2/core';
import {NgClass} from 'angular2/common';
@Component({
selector: 'header',
inputs: ['isLoginPage'],
templateUrl: './header.html',
directives: [ROUTER_DIRECTIVES, RouterLink, NgClass]
})
export class HeaderComponent {
isLoginPage: boolean;
constructor(){
if(condition){
this.isLoginPage = true;
}
}
但是当我试图查看结果时,未应用样式并且出现错误“模板解析错误:
无法绑定到 'ng-class',因为它不是已知的本机显示 属性'。有人可以指导我吗?
在 Angular2 中,解析器现在查找指令的 camelCase 名称。因此,在您的情况下,您想将 ng-class
更改为 ngClass
<img src="/src/resources/images/logo.png" [ngClass]="{logoStyle: isLoginPage, navLogoStyle: !isLoginPage}" /></a>
我正在尝试根据 Angular 2.0.0-beta.15 中的布尔值 'isLoginPage' 有条件地在 img 属性上应用 CSS 样式。 html的部分如下:
<a class="navbar-brand" href="#/">
<img src="/src/resources/images/logo.png" [ng-class]="{logoStyle: isLoginPage, navLogoStyle: !isLoginPage}" /></a>
logoStyle 和 navLogoStyle 在 css class 中提到,并在 html 主页面中添加。在相应的组件中,我设置了 isLoginPage 的值,如下所示:
import {Component, Input} from 'angular2/core';
import {NgClass} from 'angular2/common';
@Component({
selector: 'header',
inputs: ['isLoginPage'],
templateUrl: './header.html',
directives: [ROUTER_DIRECTIVES, RouterLink, NgClass]
})
export class HeaderComponent {
isLoginPage: boolean;
constructor(){
if(condition){
this.isLoginPage = true;
}
}
但是当我试图查看结果时,未应用样式并且出现错误“模板解析错误: 无法绑定到 'ng-class',因为它不是已知的本机显示 属性'。有人可以指导我吗?
在 Angular2 中,解析器现在查找指令的 camelCase 名称。因此,在您的情况下,您想将 ng-class
更改为 ngClass
<img src="/src/resources/images/logo.png" [ngClass]="{logoStyle: isLoginPage, navLogoStyle: !isLoginPage}" /></a>