Ember.js - 在某些模板中加载其他.js文件

时间:2014-11-12 02:40:59

标签: javascript ember.js handlebars.js

我正在开发一个基于ember.js的应用程序。 在一些&#34;网站&#34; (模板)我想加载一个特定的js游戏,所以我必须包含额外的标签,如<script src="game.js"></script>。但由于把手模板是由<script> - 标签本身定义的,因此不可能简单地将我的依赖项直接放在模板中。

如何仅在某些网站上添加js文件?

3 个答案:

答案 0 :(得分:0)

在Ember.js应用程序中包含文件比在常规网站中复杂一点。

如果您使用ember-cli,那么您可以将所有JavaScript文件直接包含在index.html中(逐个)或(这样更好) )您还可以将所有游戏JavaScript文件捆绑到一个文件中(例如,称为games.js),并在index.html中包含该单个文件。您可以使用gruntbrunchbroccoli等工具捆绑JavaScript文件。

现在如果你使用ember-cli(我推荐),那么你可以简单地在Brocfile.js中列出你的文件(参见文档here)。学习ember-cli可能需要一些额外的时间,但它将在未来真正帮助你:)

祝你好运!

答案 1 :(得分:0)

好的,我发现有可能解决这个问题:

如handlebars.js-FAQ here(5。)中所述,我必须使用某种“Hack”来避免解析错误。只需要将空命令{{!}}添加到单词“script”中,如<scr{{!}}ipt src=...>...</scr{{!}}ipt

这对我有用。 另外,正如kpdecker所说here,最好使用预编译模板,而不是内联定义它们。

答案 2 :(得分:0)

您可以尝试从相应视图的didInsertElement挂钩插入必要的脚本。如果是这样,为了避免重复,请删除相同视图的willDestroyElement挂钩中的脚本。