如何在不显示斯巴达克斯错误功能区的情况下处理全局错误

How to treat global errors without displaying the error ribbon in spartacus

我正在执行以下调用以仅在用户存在的情况下执行操作

    private _userConnector: UserConnector,
    ....
    this._userConnector.get(userId).subscribe(() => {
         // conditional action
    },
    (error) => {
        console.log('your handling goes here');
    });

但是,如果 userId 不存在,错误色带会出现在背面:

我深入研究了 _userConnector.get 背后的所有方法调用,但我没有找到如何只捕获 susbscribe 中的错误,避免出现红色错误带。

错误处理在低级 http 拦截器中实现。有一个文档 describes the handlers and how to customise them.

您在消息框中注意到的错误可能是由 ForbiddenHandler 驱动的,它被配置为处理 403 错误。您可以自定义处理程序以避免消息框中的错误。参见implementation on github