[英]How to import handlebars template in controller and place it in another handlebars template
抱歉,這個問題很愚蠢。 我已經開始使用ember 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>
我已經在github上發布了代碼,URL是: https : //github.com/focode/emberjs2/tree/master/app
您無需從控制器中填充模板。 您可以直接從模板中使用它。
為此,您基本上有兩種方法。 首選方式是使用組件。 但是請注意,這將為您提供新的隔離環境。 另一種方法是使用partial
helper ,它將在當前上下文中呈現模板。
我的建議是再次閱讀官方教程。 在本教程中,您將看到很少使用controller 。
當您使用生成路由器ember-cli
, ember g route routeName
下的模板文件夾,名為生成對應模板routeName.hbs
在模板中,有一個名為標簽{{outlet}}
這是嵌套的模板去。
例如,使用ember g route routeName/nestedOne
生成嵌套路由,這會在template/routeName/nestedOne.hbs
內部提供另一個名為nestedOne.hbs
template/routeName/nestedOne.hbs
,該模板實際上位於私有生成的模板routeName.hbs
的{{outlet}}
內。
Ember 在配置上使用約定,因此您無需手動導入模板。
推薦一個涵蓋很多內容的初學者教程。 它是免費和更新的(最新更新是在2016年末)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.