簡體   English   中英

在服務器端快速應用程序中使用i18n-node

[英]use i18n-node in server-side express application

我無法弄清楚應該如何在我的應用程序中使用i18n-node模塊。

在視圖中,對於靜態文本,它很容易,它完美地工作但是......

這是我的問題:

有時我必須設置一些錯誤消息或其他內容,例如:

req.flash('message', __('Unknown user %s', login));

然后我將把這條消息發送給我的觀點,例如:

res.render('myview', {message: req.flash('message')});

但首先,我的消息"Unknown user %s"將只在默認語言json文件中設置,然后即使我在客戶端語言json文件中放置"Unknown user %s": "Something in the client language"中的"Unknown user %s": "Something in the client language" ,它仍會顯示"Unknown user myUserLogin"

有人有一個很好的工作實例可以分享嗎?

編輯:因為,翻譯后的字符串中有一個變量,我不能這樣做:

res.render('myview', {message: __(req.flash('message'))});

因為它會在客戶端語言json文件中設置"Unknown user myUserLogin" ,而不是"Unknown user %s" ...

我知道這個問題有點陳舊,但我遇到了同樣的問題並找到了解決方案。

由於您使用req對象中的flash方法,因此您還應該使用同一對象中可用的__方法:

req.flash('message', req.__('Unknown user %s', login));

這樣,它將使用請求的當前區域設置進行翻譯。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM