gpt4 book ai didi

ember.js - 如何预加载数据?

转载 作者:行者123 更新时间:2023-12-02 06:10:50 27 4
gpt4 key购买 nike

我试图找出一种明智的方法来预加载一些动态数据,以便在页面加载后将初始 XHR 删除到我的 rails 应用程序中。

我一直在尝试生成类似的东西:

App.Store.pushMany('category', [{"id":1,"name" ... ]);

就在我的 application.html.erb 布局中,因为我可以在那里访问服务器端的数据。

但是,“App.Store”似乎无法在全局范围内正确解析,并且出现“没有方法 'pushMany'”错误。

有没有人想出一个好方法来做到这一点?我尝试的方式似乎有点老套,但我可以忍受它,如果我能让它工作......我如何处理正确的 DS.Store 实例?

这就是我在 application.html.erb (Rails 应用程序)中得到的:
<script type='text/javascript'>
App.Store.pushMany('category', <%= ActiveModel::ArraySerializer.new(@categories, each_serializer: Api::V1::CategorySerializer).to_json.html_safe %>);
</script>

最佳答案

您最好将它作为 json 注入(inject),然后在应用程序路由期间加载它。

<script type='text/javascript'>
window.preloadCategory = <%= ActiveModel::ArraySerializer.new(@categories, each_serializer: Api::V1::CategorySerializer).to_json.html_safe %>;
</script>


App.ApplicationRoute = Ember.Route.extend({
model: function() {
this.store.pushPayload('category', window.preloadCategory);
}
});

关于ember.js - 如何预加载数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20843115/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com