Ember 中的路由刷新事件

Posted

技术标签:

【中文标题】Ember 中的路由刷新事件【英文标题】:Route refresh event in Ember 【发布时间】:2018-03-22 03:03:28 【问题描述】:

我有兴趣在 ember 应用程序中显示刷新特定路线的模式。模态将有一个“确定”动作将继续路由刷新和一个“取消”动作将中止刷新。

我知道 ember 有 'refresh()' 方法,可以从路由中的某处调用,但不能充当事件。而且,“willTransition”事件只有在 url 路径发生变化时才会被激活。还有一个 'activate()' 事件,只有在进入路由时才会触发。

有没有办法处理路由刷新事件并根据用户操作中止或继续刷新?

【问题讨论】:

【参考方案1】:

您可以使用beforeModel 挂钩。在这里您可以保存您的转换,转换到另一条路线(以显示消息),然后.retry()您的原始转换。

这基本上就是身份验证的工作原理。一个很好的例子是ember-simple-auth。

我不能 100% 确定您到底想做什么,在离开路线之前显示一条消息,或者在进入路线之前显示一条消息,但 beforeModel 可能值得一看!

【讨论】:

以上是关于Ember 中的路由刷新事件的主要内容,如果未能解决你的问题,请参考以下文章

Ember 组件发送动作到路由

Ember 在 localhost 上的页面刷新 404 apache 后给出 404

Ember.js 路由器和 initialState 中的嵌套路由

如何从另一个框架向 Ember 触发事件

Ember JS 过渡到嵌套路由,其中​​所有路由都是视图中的动态段

如何使用 ember.js 访问嵌套索引路由中的父模型?