我刚刚开始学习Angular,但是我对如何在以下情况下使用它感到困惑。假设service.ts中的响应返回的数字不是0(即应设置自定义错误消息):
service.ts
errorMessage = "";
sendData(){
if(this.register.setRegistrationData(provider, email)){
//do something
}else{
this.errorMessage = this.service.getErrorMessage();
console.log(this.errorMessage); //Empty
console.log(this.service.getErrorMessage()); //Empty
console.log("Catastrophic Failure");
}
}
component.ts
<input type="submit" (click)="sendData();" />
<div>{{errorMessage}}</div>
component.html
{{1}}
因此,我了解由于订阅方法的结果,在component.ts中获取errorMessage之后,就完成了service.ts中errorMessage的设置。通过控制台日志对此进行了测试,该控制台日志在打印“灾难性错误”之前给出了两个空行。
将“自定义错误消息”传递到模板的最佳方法是什么?
预先感谢
答案 0 :(得分:0)
因此,在考虑了我要实现的目标之后,我将订阅方面简单地移到了component.ts上,并让component.ts处理与解决整个问题的错误消息有关的任何事情。
本质上,service.ts应该执行并返回HTTP请求,并带有component.ts订阅并处理逻辑。