0
 App = Ember.Application.create({
   currentProject: 21
 });

デフォルトは 21 で、 {{#linkTo}} をクリックすると、 に を設定しApp.currentProjectたいと思います。:project_idApp.currentProject

ルート:

App.Router.map(function() {
  this.resource('project', { path: '/project/:project_id' }, function(){
    this.resource('tasks', function(){
      this.route('new');
    });
  })
});

App.TasksRoute = Ember.Route.extend({
  model: function(params){
    return App.Project.find(params.project_id);
  },
  setupController: function(controller, model) {
    controller.set('content', model.tasks);
  }
})

テンプレート:

{{#each controller}}
  <div class="panel">
    {{#linkTo 'tasks' this}}    //click this linkTo, render to project/:project_id/tasks URL and set the App.currentProject to the :project_id at the sametime
      <div class="top"><i class="batch-big b-code"></i>
        <h6>{{title}}</h6>
      </div>
    {{/linkTo}}
  </div>
{{else}}
  <div>There are no Projects.</div>
{{/each}}

ルートのどこに ,がApp.currentProject設定されているかわかりません:project_id

App.TasksRoute = Ember.Route.extend({
  model: function(params){
    App.set('currentProject', params.project_id);   //I add the code to here,but it did not work
    return App.Project.find(params.project_id);
  },
  setupController: function(controller, model) {
    controller.set('content', model.tasks);
  }
})

テンプレート{{#linkTo}}、アクションの設定方法がわかりませんでした。

バージョン情報

  • 必須: 2.1.4
  • jQuery: v1.9.1
  • 残り火: v1.0.0-rc.1
  • ハンドルバー: 1.0.0-rc.3
4

0 に答える 0