W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
為了方便開發(fā)多語言應用,框架內(nèi)置了國際化(I18n)支持,由 egg-i18n 插件提供。
默認語言是 en-US。假設我們想修改默認語言為簡體中文:
// config/config.default.js |
我們可以通過下面幾種方式修改應用的當前語言(修改后會記錄到 locale 這個 Cookie),下次請求直接用設定好的語言。
優(yōu)先級從高到低:
如果想修改 query 或者 Cookie 參數(shù)名稱:
// config/config.default.js |
多種語言的配置是獨立的,統(tǒng)一存放在 config/locale/*.js 下。
- config/locale/ |
不僅對于應用目錄生效,在框架,插件的 config/locale 目錄下同樣生效。
注意單詞拼寫,是 locale 不是 locals。
例如:
// config/locale/zh-CN.js |
或者也可以用 JSON 格式的文件:
// config/locale/zh-CN.json |
我們可以使用 __ (Alias: gettext) 函數(shù)獲取 locale 文件夾下面的多語言文本。
注意: __ 是兩個下劃線
以上面配置過的多語言為例:
ctx.__('Email') |
如果文本中含有 %s,%j 等 format 函數(shù),可以按照 util.format() 類似的方式調用:
// config/locale/zh-CN.js |
同時支持數(shù)組下標占位符方式,例如:
// config/locale/zh-CN.js |
class HomeController extends Controller { |
假設我們使用的模板引擎是 Nunjucks
<li>{{ __('Email') }}: {{ user.email }}</li> |
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: