Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ember.js 在空动态段上重定向_Ember.js - Fatal编程技术网

Ember.js 在空动态段上重定向

Ember.js 在空动态段上重定向,ember.js,Ember.js,我有以下路线布局: App.Router.map -> @resource('playbook', { path: '/playbook/:graph_id' }, -> @route('information') @resource('goals', { path: '/goals/:vertex_id' }, -> @route('tasks') @route('messages')

我有以下路线布局:

App.Router.map ->
    @resource('playbook', { path: '/playbook/:graph_id' }, ->
        @route('information')
        @resource('goals', { path: '/goals/:vertex_id' }, ->
            @route('tasks')
            @route('messages')
        )
    )

因此,一个典型的URL看起来像
#/playbook/12345/goals/6789/messages
。但是,我希望用户能够直接转到
#/playbook
,并被重定向到相关的URL(我保存最后访问的URL)。仅当
:graph\u id
为空时,如何重定向用户

您可以使用
PlaybookRoute
中的
afterModel
挂钩来检查模型是否为空,并重定向到上一个路由

afterModel: function(model) {
  if (model is empty) {
    this.transitionTo(stored route)
  }
}

注意:
如果新路线上有动态段,则过渡到
需要已解决的模型。

您可以使用
PlaybookRoute
中的
afterModel
钩子检查模型是否为空并重定向到上一路线

afterModel: function(model) {
  if (model is empty) {
    this.transitionTo(stored route)
  }
}

注意:
transitiono
如果新路线上有动态段,则需要解析模型。

我喜欢Javascript和伪代码的混合:p谢谢你,我想这个就行了。今晚一到家我就试试。这很有效,谢谢。但是,应该注意,您必须重定向到路由,而不是资源。我花了一些时间才弄明白。我喜欢Javascript和伪代码的混合p谢谢你,我想这个就行了。今晚一到家我就试试。这很有效,谢谢。但是,应该注意,您必须重定向到路由,而不是资源。我花了一段时间才弄明白。