尝试在Ember

时间:2017-04-02 16:51:23

标签: ember.js

我有以下路由器设置:

Router.map(function() {
  this.route("login");
  this.route("dashboard");
  this.route("projects", function() {
    this.route("show", {path: "/:project_id"});

    this.route('tasks', {path: "/:project_id/tasks" },function() {
      this.route('new', {path: "/new"});
      this.route('show', {path: "/:task_id"});
    });
  });
});

而且,在templates/projects/show.hbs中,我想渲染用于创建新任务的组件(该组件由ember自动生成,但我在controllers/projects/tasks/new.js和{{}}拥有自己的模板和控制器{1}})。我尝试了以下方法:

templates/projects/tasks/new.hbs

但是我收到了这个错误:

  {{tasks/new model=model}}

解决这个问题的正确方法是什么?

1 个答案:

答案 0 :(得分:2)

{{tasks/new此处task/new可以是组件或帮助程序,但不能是模板hbs。 如果您想在tasks/new中添加templates/projects/show.hbs,我建议您为tasks/new创建组件,并将其包含在您需要的位置。

您可以尝试为模板hbs提及不同的templateName。使用templateName属性。 在show.js路径文件中定义templateName: 'projects/tasks/new'