Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.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

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
Javascript 如何在控制器中导入把手模板并将其放置在另一个把手模板中_Javascript_Ember.js_Handlebars.js - Fatal编程技术网

Javascript 如何在控制器中导入把手模板并将其放置在另一个把手模板中

Javascript 如何在控制器中导入把手模板并将其放置在另一个把手模板中,javascript,ember.js,handlebars.js,Javascript,Ember.js,Handlebars.js,如果这个问题很傻,我很抱歉。我已经开始与余烬js前端工作,我喜欢它。 我陷入了一个困境,我想在ember js控制器中导入一个把手模板并将其附加到div 所以,如何在控制器中导入一个把手模板并填充它,然后将其放置在另一个把手模板中 这是我的控制器: import Ember from 'ember'; export default Ember.Controller.extend({ actions: { search: function() { ale

如果这个问题很傻,我很抱歉。我已经开始与余烬js前端工作,我喜欢它。 我陷入了一个困境,我想在ember js控制器中导入一个把手模板并将其附加到div

所以,如何在控制器中导入一个把手模板并填充它,然后将其放置在另一个把手模板中

这是我的控制器:

import Ember from 'ember';

export default Ember.Controller.extend({

    actions: {
    search: function() {
            alert("done");
          }
    }

});
以下是车把模板:

<table class="table table-striped">
   <thead>
   <tr>
       <th>Name</th>
       <th>Mark</th>
       <th>Subject</th>
   </tr>
   </thead>
   <tbody>
   {{#each students}}
   <tr>
       <td>{{ this.name }}</td>
       <td>{{ this.mark }}</td>
       <td>{{ this.subject }}</td>
   </tr>
   {{/each}}
   </tbody>
 </table>

名称
做记号
主题
{{{每个学生}
{{this.name}}
{{this.mark}}
{{this.subject}}
{{/每个}}

我已经在github上发布了代码,url是:

您不需要从控制器填充模板。您可以直接从模板中使用它


为此,你基本上有两种方法。首选的方法是使用组件。但是请注意,这将为您提供一个新的、孤立的上下文。另一种方法是使用,它将在当前上下文中呈现模板。

我的建议是再次阅读官方教程。在本教程中,您将看到很少使用控制器

当您使用
ember cli
生成路由器时,
ember g route routeName
在名为
routeName.hbs
的模板文件夹下生成相应的模板,模板内部有一个名为
{{outlet}}
的标记,这就是嵌套模板所在的位置

例如,使用
ember g route routeName/nestedOne
生成一个嵌套路由,它为您提供另一个名为
nestedOne.hbs
inside
template/routeName/nestedOne.hbs
的模板,该模板实际上位于私有生成模板
routeName.hbs
中的
{outlet}

Ember在配置上使用约定
,这样您就不需要手动导入模板

推荐一个涵盖很多内容的初学者教程。它是免费和更新的(最后一次更新是在2016年底)