所以,我正在考虑将整个翻译对象放到redux商店中,然后再保湿到客户端。这个翻译对象是大约50kb的压缩,115kb未压缩。
我们整个网站都已翻译,因此该翻译对象基本上代表了整个网站的所有非动态副本。如果它在最初的http请求中充当客户端,它应该提供即时浏览体验,至少是内部副本。
但是,我想知道这是否对于redux商店来说太大了?
答案 0 :(得分:6)
您应该单独加载翻译。 Webpack允许代码分割,这可以帮助。或者您可以使用脚本标记。
单独加载它的原因是浏览器可以缓存它。这允许每个用户仅加载一次。由于React生成的HTML页面是动态的,而您传递的商店也是动态的,因此无法缓存它们。
如此庞大的数据块,将其加载到每个页面加载上只是一个坏主意。
此外,商店是为州。它是处理变化的东西。将静态数据放在那里并不意味着要处理它。这并不意味着它无法完成,但它不是一个很好的匹配。
答案 1 :(得分:4)
我不认为那里有太大的' Redux商店的大小。但是它应该只包含应用程序状态。翻译对象应该在代码中,您应该通过i18n库访问它们。 国家应该有一个字段,说明你必须向用户显示什么语言。