Uri*_*Uri 20 templating internationalization angularjs
我正在考虑将我的网站移动到angularjs,并且我希望从非常小的开始,将我的所有静态服务器端纯文本模板从django移动到angular(否则会出现语法问题'{{}}' ).
似乎最好的方法是两种选择之一:
这两个选项都允许我在不重新加载页面的情况下在语言之间切换.
哪一个更好?一般来说,这是一个好方法还是有更正确的方法?
JD *_*ith 33
我尝试了一些不同的选项,包括Angular Translate,但到目前为止我最喜欢Angular-gettext.
有一点非常有帮助的是,它有一个工作演示,它们就是TodoMVC,称为angular-gettext-example.
工作流程很简单:
我确定这里发布的其他解决方案也很好,但我还没有看到像angular-gettext-example这样组织得很好的端到端示例.
干杯,JD
首先,有一种方法可以将angular的分隔符更改为其他符号,如下所示:Angular JS自定义分隔符
2.选项更容易.您包含一次,并且您在页面加载时拥有所有翻译.没有异步电话,没有承诺,很好,很容易.
然而我会选择第一个.像$ translate这样的服务真的会让你的生活更轻松.选择1.此外,它还有很多选项可以在LocalStorage和cookies中加载和存储加载的数据,因此有足够的空间进行扩展和自定义.然后,您可以使用$ translate服务,指令或过滤器翻译您的内容.
并且不要忘记2选项禁用缓存请求的任何选项.在每个请求到您的起始页面时,服务器必须读取静态文件并将其包含在html中.使用第一个选项,用户的浏览器可以根据需要缓存.json.