Ember.js 直接输入url时不调用路由挂钩

Ember.js 直接输入url时不调用路由挂钩,ember.js,ember-data,ember-cli,Ember.js,Ember Data,Ember Cli,我面临着一个与灰烬路线有关的严重问题 当我试图通过指向帮助程序的链接显示单个项目时,它工作正常,并在路径中为note.index正确调用。但是当我直接在浏览器中输入URL(localhost:4200/assessment/1/note/1)时,不会调用路由钩子,它可能是“model”钩子或“setupController”钩子或任何其他钩子。 基本上,我想通过store.find向rails应用程序传递一些额外的参数 路由器.js @resource "assessment", path: '

我面临着一个与灰烬路线有关的严重问题

当我试图通过指向帮助程序的
链接显示单个项目时,它工作正常,并在路径中为
note.index
正确调用。但是当我直接在浏览器中输入URL(
localhost:4200/assessment/1/note/1
)时,不会调用路由钩子,它可能是“model”钩子或“setupController”钩子或任何其他钩子。 基本上,我想通过
store.find
向rails应用程序传递一些额外的参数

路由器.js

@resource "assessment", path: 'assessments/:assessment_id', ->
   @route 'edit'
   @resource "notes", ->
     @route "new"
@resource "note", path: "note/:note_id", ->
   @route 'edit'
注释/index.js

`import Ember from 'ember'`

noteIndexRoute = Ember.Route.extend
    model: (params)->
        console.log('********************Model Hook******************')
        assessment = @modelFor('assessment')
        @store.find('note',params.note_id,assessment_id: assessment.get('id')});

    setupController: (controller,model)->
        @_super controller, model
        console.log('********************Setup Contr Hook********************')
        assessment = @modelFor('assessment')
        controller.set( "model",@store.find('note',model.id,assessment_id: assessment.get('id')});

`export default noteIndexRoute`

注意:我想向我的rails API传递一些额外的参数,这就是为什么我需要在获取项时调用钩子

灰烬版本是1.10.0。现在,当我在浏览器中输入url时,路由钩子就开始工作了,并且工作正常。实际上,我的路由文件是index.js,它出现在
note/index.js
path中。我将index.js路由从note目录移动到
“app/routes/”
目录,并将名称从index.js文件更改为note.js文件。因此,我的路由文件的新路径是
app/routes/note.js。
它解决了我的问题,现在我的钩子工作正常,当我在broswer中输入direct url时调用


同样,我移动并更改控制器文件和模板文件的名称和路径。控制器从
note/index.js
note/index.hbs
app/routes/note.js
,模板文件从app/templates/note.hbs

你是哪个版本的?目前不建议使用
this.resource
。我也没有在应用程序中看到
/assessment/1/note/1
路由,因为
note
没有嵌套在
assessment
下。可能不是您遇到的特定问题,而是
controller.set(
model',`将为
model
属性分配一个承诺,这可能不是您想要的。您需要在
then
子句中进行设置,或者更可能在
beforeModel
afterModel
钩子中进行设置,在钩子中,余烬将为您解决该承诺。此外,您不需要
return
在您的
模型中
hook?@torazaburo-CoffeeScript(我假设使用的是代码)具有隐式返回。