i18next快速入门:
初始化例子:
- var i18n=require('i18next');
- i18n.init({
- lng:'en' ,
- fallbackLng:'en' ,
- ns: {namespace:['ns.common','ns.special'],defaultNs:'ns.special;} ,
- resSetPath: 'locales/__lang__/new.__ns__.json',
- saveMissing: false
- });
- ...
- app.configure(function(){
- ...
- app.use(i18n.handle);
- app.use(app.router);
- });
- i18n.registerAppHelper(app)
- .severClientScript(app)
- .serveDynamocResources(app)
- .serveMissingKeyRoute(app);
- app.get('/',function(req,res){
- info=req.cookies;
- switch (info.i18next){
- case "zh-CN":
- i18n.setLng('zh-CN');
- ...
- default:
- i18n.setLng('en’);
- }
- });
locales/en/ns.special.json 写法举例:
{
"app":{
"title":{
"home":"hello world",
...
}
},
"jade":{
"ui":{
"title":"welcome",
...
}
}
}
app中应用方法:
title: req.i18n.t('app.title.home')
jade中应用方法:
h1 #{t('jade.ui.title')
变更语言:
url方式: ?setLng=.en-US
script方式: i18n.setLng('en-US')
其他用法参考:
阅读(11951) | 评论(0) | 转发(0) |