我想按需加载我的Ember.js应用程序的一部分(应用程序是用AMD构建的,但是合并为一些大的脚本文件用于生产)。
一个例子:
浏览'/'
用户从/
开始,HTML加载包含Ember.js的文件core.js
,路由和应用程序控制器+视图。
浏览到'/ user / settings'
所以现在用户第一次浏览/user/settings
。这里的视图,控制器和模板都在user.js
中,它通过脚本加载器按照相应的路径加载:
App.UserRoute = Em.Route.extend({
enter: function(ctx) {
this.ajaxLoadFiles("user.js", function() {
// ???
});
}
});
问题
不知何故,Ember.js需要等待才能加载脚本,然后继续路由......我该怎么做?
答案 0 :(得分:1)
我使用的是require.js,它非常适合模块化代码!
你可以克隆todoMVC AMD版本来学习
https://github.com/addyosmani/todomvc/tree/gh-pages/dependency-examples/emberjs_require
有关进一步的建议,请参阅此帖:
Is there any way to split an Ember.js app across a few files?