在 angular 中将 *ngIf 与 else 一起使用时出错
Getting error when using *ngIf with else in angular
这是我的 app.component.ts 文件
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
public title:string = 'angularapp';
public username:string='root';
public password:string='root';
}
这是我的 app.component.html
<div *ngIf="username=='root' && password=='root'; else elseBlock">
<h3>Login suceess</h3>
<ng-template #elseBlock>
<h3>Login failed</h3>
</ng-template>
</div>
我在将 else elseBlock 添加到 *ngIf 时遇到错误
这是错误
Error: src/app/app.component.html:1:56 - error TS2339: Property 'elseBlock' does not exist on type 'AppComponent'.
1 <div *ngIf="username=='root' && password=='root'; else elseBlock">
~~~~~~~~~
src/app/app.component.ts:5:16
5 templateUrl: './app.component.html',
~~~~~~~~~~~~~~~~~~~~~~
Error occurs in the template of component AppComponent.
您的 elseBlock 不能在 *ngIf 管理的块内。
正确的模板应如下所示:
<div *ngIf="username=='root' && password=='root'; else elseBlock">
<h3>Login suceess</h3>
</div>
<ng-template #elseBlock>
<h3>Login failed</h3>
</ng-template>
你甚至不需要 ngIf。您可以使用三元运算符解决它:
<h3>
{{ ((username === 'root') && (password === 'root')) ? 'Login success' : 'Login failed'
</h3>
这是我的 app.component.ts 文件
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
public title:string = 'angularapp';
public username:string='root';
public password:string='root';
}
这是我的 app.component.html
<div *ngIf="username=='root' && password=='root'; else elseBlock">
<h3>Login suceess</h3>
<ng-template #elseBlock>
<h3>Login failed</h3>
</ng-template>
</div>
我在将 else elseBlock 添加到 *ngIf 时遇到错误 这是错误
Error: src/app/app.component.html:1:56 - error TS2339: Property 'elseBlock' does not exist on type 'AppComponent'.
1 <div *ngIf="username=='root' && password=='root'; else elseBlock">
~~~~~~~~~
src/app/app.component.ts:5:16
5 templateUrl: './app.component.html',
~~~~~~~~~~~~~~~~~~~~~~
Error occurs in the template of component AppComponent.
您的 elseBlock 不能在 *ngIf 管理的块内。 正确的模板应如下所示:
<div *ngIf="username=='root' && password=='root'; else elseBlock">
<h3>Login suceess</h3>
</div>
<ng-template #elseBlock>
<h3>Login failed</h3>
</ng-template>
你甚至不需要 ngIf。您可以使用三元运算符解决它:
<h3>
{{ ((username === 'root') && (password === 'root')) ? 'Login success' : 'Login failed'
</h3>