我想使用i18next作爲實際用戶名輸入「您已經以[用戶名]登錄」,但是我似乎無法讓他們一起工作。連接i18next和Jade變量
據我所知,i18n覆蓋整個<p>
顯示「您已登錄爲」。用戶名只顯示,如果我把它放在一個單獨<p>
,就像這樣:
if (user)
p(data-i18n='markup.loggedInAs')
p #{user.username}
不過,當然,它被呈現爲一個單獨的<p>
,這不是我想要的。我希望他們在一條線上,理想情況下在同一個<p>
內。有一個竅門嗎?
此:
if (user)
p(data-i18n='markup.loggedInAs')
| #{user.username}
不起作用。用戶名根本不顯示:/
感謝您的幫助。
我不熟悉玉石,但我知道i18next支持變量替換與翻譯。編輯:不知道如何停止標記,但myVar是由兩個下劃線包圍。 // given resources { 'en-US':{translation:{key:'__myVar__ is important'}} }; (「key」,{myVar:「variables」}); // - >變量很重要 – AtheistP3ace
但是這會花費我很大的靈活性,如果我想在兩個不同的地方使用變量(如用戶名,在這種情況下) 我總是要預格式化整個字符串,對嗎? – user3787706
是的,但翻譯很難動態翻譯,因爲單詞的順序和語言之間的差異並不大。您以[用戶名]在各種語言中的差異很大而登錄,因此使用翻譯後的字符串並僅替換一個變量意味着靈活性越低,可譯性越好。 – AtheistP3ace