0

我在我的节点应用程序中使用 i18next 对其进行国际化。

我的设置 :

i18next.init({
    load: 'current',
    saveMissing: true,
    sendMissingTo : 'all',
    ignoreRoutes: ['img/','images/', 'public/', 'css/', 'js/'],
    debug: true,
    supportedLngs: ['en-US', 'fr-FR'],
    fallbackLng: 'fr-FR'
});

在客户端,我有两个用于更改语言的链接:

<a href="/setLanguage/en-US">English</a>
<a href="/setLanguage/fr-FR">Francais</a> 

在服务器端,我发现了两种可能性(我将语言广告重定向到欢迎页面):

app.get('/setLanguage/:lng', function(req, res){
    console.log('Change language : ' + req.params.lng);
    i18next.setLng(req.params.lng, function(){
           res.redirect('/');
    });
});

问题是第 2 点:

  1. 正确更改所选语言
  2. 重定向到 '/' 将语言重新加载为默认值。

如何不重新加载它?

4

1 回答 1

0

docs中,您有以下选项:

  • 添加?setLng=<language>到网址
  • 设置 i18next cookie

setLng方法被删除。

于 2013-07-30T02:30:45.227 回答