0.0.3 • Published 10 years ago
nsi18n v0.0.3
nsi18n
An I18N module for NodeJs with Express framework
Description
An I18N module for Nodejs with Express framework. It's easy to use. You can use js files or json files to record you local info.
Installation
npm i nsi18n --save
Usage
var nsi18n = require('nsi18n');
var _$ = nsi18n._$;
nsi18n.config({
locals: ['zh_cn', 'en'],
defaultLocals: 'en',
cookieName: 'local',
ext: '.js',
localsDir: path.join(__dirname, 'locals')
});
...
app.use(express.bodyParser());
app.use(express.cookieParser()); // this is important
app.use(nsi18n.NSI18N());
###Use with res.iRender
app.get('/', function(req, res, next) {
res.iRender('index');
});
In jade file(or others, but not test) use "{{tag}}" to sign the local info
extends layout
block content
h1 {{hello_world}}
p {{welcome}}(thesadboy,thesadboy@qq.com)
###Use with _$
app.get('/', function(req, res, next) {
res.send(_$(res,'hello_world'));
});
app.get('/count', function(req, res, next){
res.send(_$(res,'welcome', 'thesadboy', 'thesadboy@qq.com'));
});
###Change the current local Append a param "local" (eg. "local=en") to your url (eg. "http://localhost/?local=en") to change the current local.
Notice
###JS file demo(message_en.js)
module.exports = {
hello_world : 'Hello World!',
welcome : 'Welcome {0}, your email is {1}!'
}
###JSON file demo(message_en.json)
{
"hello_world" : "Hello World"
"welcome" : "Welcome {0}, your email is {1}!"
}