问题标签 [angular-errorhandler]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
97 浏览

angular - 当 Angular 应用无法引导时如何添加新组件

我有一个关于我的 Angular 应用程序的问题,我有一个应用程序从 API 获取其初始配置数据,并且可以使用这些配置引导应用程序。这是 ApiConfigService:

这是 Api 配置工厂:

在我的应用程序模块中,这就是我在提供程序中所拥有的:

所以应用程序初始化依赖于来自 window.ConfigReady 的承诺。如果 window.ConfigReady 解决并具有正确的数据应用程序将被初始化并且一切都很好。

现在我要添加一个新功能,在某些情况下配置不存在,我需要实现一个登录页面并将其显示给用户,然后在登录后将获取配置并初始化应用程序。我想知道如何实现该结构的登录组件?基本上我需要以某种方式添加到应用程序模块中,当 window.ConfigReady 不存在时,使用另一个组件signInComponent将其显示给用户。任何有关如何在 Angular 中执行此操作的帮助和行会都将不胜感激!谢谢

0 投票
1 回答
3364 浏览

angular - Angular 路由异常处理错误处理程序

如何处理中的导航错误ErrorHandler

我尝试使用以下条件来检查Error对象是否属于NavigationError但它说的是假的。

如何处理路由器导航错误ErrorHandler?我不想添加通配符路由。

如果类型正确,上述条件是否有效?如果是这样,我应该检查什么类型?

0 投票
0 回答
1257 浏览

php - 处理具有状态的 Http 响应的问题:来自 Angular 6 的 200

当我尝试通过用 PHP 编写脚本的 API 上传图像时,一旦上传成功到以下目录获取HttpErrorResponse代码status: 200

上传图片.component.ts

上传图片服务

但是图片上传成功。但即使在上传完成后,我也会收到 HTTP 错误响应

通过console查看上面两段代码提交后生成的日志如下:

catchError(this._errorHandler)即,通过从控制台打印中捕获错误,如下所示

err => console.log(err)结果在 HttpErrorResponse

我应该如何编写代码以处理并获得成功的 Http Response 消息,其中包含已成功上传的图像名称?

编辑:


0 投票
2 回答
118 浏览

angular - Angular ErrorHandler 传递了不正确的数据

来自组件的错误subscribe返回errorHttpErrorResponse(这是预期的类型。但是,来自解析器的错误返回error为 type Error

当错误源自解析器时,自定义错误类型会丢失,并且仅返回泛型Error类型。

0 投票
1 回答
740 浏览

angular - 无法在组件 html 中显示后端错误 - Angular

我正在尝试显示我使用 errorHandler 生成的后端错误,但它没有显示任何内容。

我该如何展示它?

它返回undefined

HTML

组件 TS

SERVICE TS控制台登录getErrors()给了我undefined

ERROR HANDLER SERVICE TS打印控制台日志

0 投票
0 回答
326 浏览

angular - httpClient 出错刷新 Angular 中的 url

我正在尝试使用httpClientinAngular进行 API 调用。这是我进行 api 调用的代码。

这是我的httpPost方法authService

auth.service.ts

现在,在有效负载中,我故意遗漏了一个字段,结果服务器抛出了一个错误。这是我从服务器得到的错误:

来自服务器的响应:

现在我面临的问题是我的页面会自动刷新。这是我原来的 url: http://localhost:4200/user/new,在 api 调用之后,页面会用这个新的 url 刷新http://localhost:4200/user/new?。添加了一个额外的问号,我不确定为什么页面会刷新。它不应该被刷新,因为在我的逻辑中没有我写过的地方。

编辑

我有一个formGroup

在更改下拉列表时,我将删除此控件:

如果我不删除持续时间控制(this.inputForm.removeControl("duration");),那么它会完美运行。这种变化如何导致页面刷新?

Edit1duration从以下位置删除了控件ngOnInit()

现在它工作正常,页面没有刷新。但我仍然无法弄清楚原因。

0 投票
3 回答
2813 浏览

angular - 如何从 HttpErrorResponse 获取请求的正文/内容?[角度错误处理程序]

假设我向post服务器发送了一个创建用户的请求。如果服务器响应错误,我想从ErrorHandler. 这样做的原因是,例如,当“创建用户”失败时,我想显示一个通知,其中包含从表单中获取的一些详细信息和一个按钮,用于将您重定向回相应的页面,并再次填充检索到的字段形式。

这就是我的ErrorHandler样子:

0 投票
1 回答
967 浏览

angular - 在 Angular 6 中使用自定义错误处理更新组件

我正在使用Angular 6

我创建了一个自定义错误处理程序,扩展了ErrorHandler来处理所有网络错误,例如。

此处理程序按预期处理所有错误。但是在组件的 HTML 中,提交按钮在提交状态下被禁用,例如

在上述情况下,onSubmit()向服务发出请求并订阅它。

我想在请求/响应完成后将提交的标志重置为false 。处理成功响应和重置提交标志很容易。但是由于错误是由自定义错误处理程序处理的,我该如何重置submitted标志?

如果我将错误处理放在组件中,则自定义错误处理程序将停止工作。此外,如果我避免使用自定义错误处理程序,那么我将不得不在每个订阅中编写重复代码来处理所有类型的错误,例如 403、404、500 等。

0 投票
0 回答
327 浏览

typescript - '错误:在 Angular5 的错误处理程序中,位置 0 处未捕获(承诺中)缺少数字'

ErrorHandler在我的 angular5 项目中使用界面来显示错误消息并在控制台中记录错误。问题是我得到了Error: uncaught (in promise): Missing number at position 0Cannot read property of undefined当我单击Submit详细信息表单的按钮时,对于所有其他Submit按钮,我都没有收到此错误。

谁能指导我为什么会收到此错误以及如何处理?谢谢。

0 投票
1 回答
992 浏览

angular - Angular - ErrorHandler for interceptor for custom HTTP error handling

I had a clarification on usage of intercepting ErrorHandler for handling custom error for HTTP requests and client side errors in Angular 6+.

Its getting called correctly for client side errors. But for HTTP errors custom error handler not getting called when there is a error handler added HTTP request subscriber(See below code). Same time custom error handler get called when error handler removed from subscriber. Is that expected behavior. Couldn't find any doc related to that in Angular doc.

Thanks,

Peter