如何设置一个变量类型,但不给它一个值?



关于使用严格模式的Typescript的Angular 11项目,我有:

export class AvatarComponent { 
@Input() user: UserModel = null;
}

我得到编译错误:

Type 'null' is not assignable to type 'UserModel'.

其中UserModel为:

export class UserModel {
id?: number;
name?: string;
}

我如何将user变量类型设置为UserModel但具有空值?

我相信这能行

export class AvatarComponent { 
@Input() user = <UserModel>null;
}

https://stackblitz.com/edit/angular-ivy-7f6obj?file=src%2Fapp%2Fapp.component.ts

如果您希望设置null:

export class AvatarComponent { 
@Input() user: UserModel | null = null;
}

如果您希望设置undefined:

export class AvatarComponent { 
@Input() user: UserModel;
}

最新更新