流星消息格式服务器端翻译



我正在流星应用程序上使用消息格式进行服务器端验证,我想将错误消息返回到客户端,并以用户语言本地化(以前在客户端中使用mfPkg.setLocale("userLanguage")设置)。如何以正确的方式完成此任务?在服务器端,消息没有本地化,我不知道如何处理这种情况。

您也可以在服务器上使用mf()函数。只需将区域设置指定为第四个参数:

var key = 'helloname';
var params = { name: "Jeff" };
var message = "Hello {name}!";
var locale = 'da';
var translatedMessage = mf(key, params, message, locale);

现在很明显,你必须知道访问者的位置,这样才能工作。您无法访问客户端Session全局。在我的例子中,我已经将区域设置同步到Meteor.user().profile.locale,这样我就可以从那里为登录用户读取它。

如果可以的话,请为客户翻译。如果您在客户端上加载了messageformat,只需传递密钥并让客户端翻译错误。(我知道这并不总是可能的。)

最新更新