我正在开发一个基于ember.js的应用程序。
在一些&#34;网站&#34; (模板)我想加载一个特定的js游戏,所以我必须包含额外的标签,如<script src="game.js"></script>
。但由于把手模板是由<script>
- 标签本身定义的,因此不可能简单地将我的依赖项直接放在模板中。
如何仅在某些网站上添加js文件?
答案 0 :(得分:0)
在Ember.js应用程序中包含文件比在常规网站中复杂一点。
如果您不使用ember-cli,那么您可以将所有JavaScript文件直接包含在index.html
中(逐个)或(这样更好) )您还可以将所有游戏JavaScript文件捆绑到一个文件中(例如,称为games.js
),并在index.html
中包含该单个文件。您可以使用grunt或brunch或broccoli等工具捆绑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
挂钩中的脚本。