javascript – Ember.js – Pod结构中的错误状态

前端之家收集整理的这篇文章主要介绍了javascript – Ember.js – Pod结构中的错误状态前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这是我在àpp/ ​​pods里面的结构:
|-application
|-index
|-error
|-user
||-index
||-view
||-edit

发生错误时,ember不会加载错误路由.
相反,它尝试加载像index_error或user_error这样的子路由,但这些子路径不存在.

如何强制Ember在任何错误上加载根错误路由?

恩伯v2.1
Ember-Cli v1.13.8

解决方法

你提供的结构实际上应该完全按照你所描述的那样去做.

看看this twiddle看一个例子.单击“查看用户”将转换到user.view路由,但单击“编辑用户”将在user.edit路由中引发异常,而是将您置于错误路由上.

需要注意的一点是,您不应该自己在router.js中添加错误路由.它接收转换错误作为其模型,因此如果您手动执行此.route(‘error’)并且不为其提供动态段,则转换将失败.

如果您希望更准确地控制在任何转换期间发生错误时发生的情况,您可以在应用程序路由上实现错误操作.

actions: {
  error(thrownError) {
    this.transitionTo('my-error-route'); // Or whatever other handling you want
  }
}

您可以在this twiddle中看到这种安排的完整示例.请注意,这与default error behavior略有不同,因为它将产生完整转换(即URL将被更新),而不是仅仅移动到子状态.

猜你在找的JavaScript相关文章