Angular 防止更改输入值
我们正在开发angular应用程序(使用angular 5) 我们的组件通常具有如下定义的输入和输出参数:Angular 防止更改输入值,angular,typescript,angular5,Angular,Typescript,Angular5,我们正在开发angular应用程序(使用angular 5) 我们的组件通常具有如下定义的输入和输出参数: export class MultipleItemPickerComponent implements OnInit { @Input() itemPickerHeaderText: string; @Output() multipleItemsPickerOkClick: EventEmitter<string[]> = new EventEmitter(); @
export class MultipleItemPickerComponent implements OnInit {
@Input() itemPickerHeaderText: string;
@Output() multipleItemsPickerOkClick: EventEmitter<string[]> = new EventEmitter();
@Output() multipleItemsPickerCancelClick: EventEmitter<Event> = new EventEmitter();
<app-multiple-item-picker itemPickerHeaderText="{{question.texts['reason']}}" (multipleItemsPickerOkClick)="multipleReasonsPickerOkClick($event)" (multipleItemsPickerCancelClick)="multipleReasonsPickerCancelClick($event)"></app-multiple-item-picker>
我想防止对输入值进行任何更改。有什么方法可以做到这一点吗?您可以将输入属性标记为“只读”,typescript编译器将阻止有人从构造函数外部更新类内部的输入值
@Input()
public readonly itemPickerHeaderText: string;
这有点老套,但在你的情况下应该行得通。因为angular编译器不会抱怨它是只读的,typescript编译器也不知道angular输入绑定。工作得很好。谢谢
@Input()
public readonly itemPickerHeaderText: string;