如何解决如果问题解析 JSON 文件 Angular,请尝试 catch 不捕获错误
我有一个读取 JSON 文件的函数,如果解析文件时出现问题,我正尝试显示警报消息。但看起来代码永远不会被捕获。错误消息显示在控制台日志中,但警报从未显示在屏幕上:
ts 文件中的代码:
public fetchData() {
this.subscription.push(
this.backEndApiService.get('data/test.json').subscribe(
(response) => {
try {
this.Data = JSON.parse(response);
} catch (error) {
this.alertPopupService.showErrorAlert('here1');
}
}
)
);
}
html 文件中的代码:
<div>{{ Data.address1 }}</div>
所以我在查看控制台日志时知道“address1”存在问题,但如何在警报消息中显示此信息以便用户可以看到?
解决方法
在从 API 获取值之前,您的 Data
变量似乎未定义。您在组件中捕获错误,但在视图中 Data
变量可能未定义或为空。因此,您可以将 Data
初始化为具有空 address1
属性的对象
Data = { address1: ''}
或者在 view
中使用 ?
sybmol,检查左侧是否存在
在你的 html
<div>{{ Data?.address1 }}</div>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。