我有一个相当复杂的 Ember.js 对象,我想在页面加载时与初始 HTML/javascript 一起发送(以避免单独访问服务器),但随后允许用户修改它。
所以我知道如何设置直接存在的 FIXTURE 数据,并且我知道如何设置 RESTAdapter 以便我可以加载/保存到服务器...我可以同时执行这两个操作吗?
看起来就像商店只为其中一个或另一个设置一次。我可以为一个数据源拥有多个商店吗?
谢谢!
最佳答案
如果您想从应用程序代码外部加载数据,可以按以下方式执行:
向您的文档添加预加载函数(位于所有 app.js 和 store.js 下方):
<script>
window.preload = function(store) {
store.loadMany(App.Post,[10,11],[{ id: 10, content: "testcontent", author_id: 1 },{ id: 11, content: "testcontent2", author_id: 1 }]);
store.load(App.User,{ id: 1, username: "supervisor"});
}
</script>
在您的ApplicationRoute中,您可以使用存储作为参数来调用预加载函数。
App.ApplicationRoute = Ember.Route.extend({
setupController: function(controller, model) {
window.preload(this.store);
}
});
这样可以减少应用程序初始化时发出的请求量。
关于ember.js - 在 Ember : Fixture vs REST adapter 中预加载数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15312198/