前端这块做单页应用 SPA,集成多种语言一般什么技术方案比较好?

2017-11-04 09:28:44 +08:00
 a251922581
Single Page Application 前端的单页应用,就是 JavaScript 前端了,要提供给用户多语言支持的话,一开始怎么规划比较好一点?还是有现成的库可以做这个事情,到时候只要翻译好的配置文件加载进来就可以了?先谢过。。
2790 次点击
所在节点    程序员
9 条回复
azh7138m
2017-11-04 09:33:49 +08:00
是 i18n 这种轮子吗? gayhub 上倒是有不少
future0906
2017-11-04 09:46:28 +08:00
重型企业应用的话,可以考虑 ng2,毕竟推出一段时间,相对成熟。不知道现在 ng2-material 什么情况。
ibegyourpardon
2017-11-04 10:02:19 +08:00
@future0906 前两天刚看到 ng5 了…… 吐血
dong3580
2017-11-04 10:15:22 +08:00
@ibegyourpardon
还好了,适合单页
fulvaz
2017-11-04 10:31:25 +08:00
@ibegyourpardon 为啥吐血, 关键更新应该是 aot 编译速度炸裂啊
WittBulter
2017-11-04 14:59:35 +08:00
@future0906
有关 NG 的 UI 框架,必须推荐一个我厂的 Element,https://github.com/eleme/element-angular

另外,楼主,i18n 或者其他工具都可以,做多语言和框架都没有关系,无论前端是怎么实现的,多语言都可以做的很好。本质上就是一个标记词和替换词的过程,当然你也完全可以花几个小时自己写一套,然后把词全部配置好就行。

公共的 i18n 这些工具比较方便的地方是它可以把词和段落解析成指定的 xml 文件,在翻译工具中打开,方便大家协作。但你也可以自己实现一个,比如我就自己写了一个服务器和桌面应用解析 json 然后推给翻译,翻译用我写的和 twitter 一样的客户端翻译,都可以。具体实现方式看你的时间,项目大小综合考虑吧。
WittBulter
2017-11-04 15:00:54 +08:00
@fulvaz
AOT 最蠢的地方在于不允许动态引入模块,而且模板中不允许引用 private,这两点设计的真丑陋。
fulvaz
2017-11-04 18:29:32 +08:00
@WittBulter

所以不能路由 loadChildren 是 AOT 的锅咯.? 握草....

private 都随意了
beginor
2017-11-04 23:24:35 +08:00
jit 是 loadModule,aot 是 loadModuleFactory

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/403427

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX