您好,SonarQube 出现以下错误 “订阅”已被弃用。使用观察者而不是完整的回调。 我在 Angular 9 中正式使用。 感谢您的帮助和时间
onInit: (field: UiFormFieldConfig) => {
const CostsControl = FormUtil.getControl(field.form, ContactDetailsFieldKey.Costs);
CostsControl?.valueChanges.pipe(takeUntil(this.destroy$)).subscribe((Cost: string) => {
if (Cost) {
const costsToSet = !Codes ? null : Cost;
field?.formControl?.setValue(costsToSet);
}
});
},
},
请查找更新的代码,但 sonarQube 正在弹出此消息 “订阅”已被弃用。使用观察者而不是完整的回调
hooks: {
onInit: (field: UiFormFieldConfig) => {
const CostsControl = FormUtil.getControl(field.form, ContactDetailsFieldKey.Costs);
CostsControl ?.valueChanges.pipe(takeUntil(this.destroy$)).subscribe({
next: (Cost: string) => {
if (Cost) {
const costsToSet = !Codes ? null : Cost;
field?.formControl?.setValue(costsToSet);
}
},
});
},
},
根据@Philipp Meissner提到的答案,你应该简单地做:
CostsControl?.valueChanges.pipe(takeUntil(this.destroy$)).subscribe(
next: (Cost: string) => {
if (Cost) {
const costsToSet = !Codes ? null : Cost;
field?.formControl?.setValue(costsToSet);
}
},
error: () => { // log error }
});