我不知道应该如何在应用程序中使用i18n-node模块。
在视图中,对于静态文本,这很容易,它可以完美地工作,但是...
这就是我的问题:
有时我必须设置一些错误消息或其他信息,例如:
req.flash('message', __('Unknown user %s', login));然后,我将不得不将此消息发送给我的视图,例如:
res.render('myview', {message: req.flash('message')});但首先,我的消息"Unknown user %s"将仅在默认语言json文件中设置,然后即使我将"Unknown user %s": "Something in the client language"放入客户机语言json文件中,它仍将显示"Unknown user myUserLogin"。
有没有人有很好的工作例子可以分享?
Edit:因为在翻译后的字符串中有一个变量,所以我不能这样做:
res.render('myview', {message: __(req.flash('message'))});因为它将在客户端语言json文件中设置"Unknown user myUserLogin",而不是"Unknown user %s"...
发布于 2015-01-07 07:46:50
我知道这个问题有点老了,但我遇到了同样的问题,并找到了解决方案。
由于您使用的是req对象中的flash方法,因此还应使用同一对象中提供的__方法:
req.flash('message', req.__('Unknown user %s', login));这样,它将使用请求的当前区域设置进行翻译。
https://stackoverflow.com/questions/24353769
复制相似问题