express使用i18n实现国际化

简介: express使用i18n实现国际化

文档 https: //www.npmjs.com/package/i18n

文件目录

.
├── index.js
├── locales
│   ├── en.json
│   └── zh.json
└── package.json

1、默认通过浏览器语言判断

2、可以通过查询参数指定语言

http: //localhost:8000/?lang=zh

index.js

var express = require('express'),

i18n = require("i18n");

const app = express()

// 语言配置
i18n.configure({
locales: ['en', 'zh'], // 声明包含语言
directory: __dirname + '/locales', // 设置语言文件目录
queryParameter: 'lang', // 设置查询参数
defaultLocale: 'en', // 设置默认语言
});

// 初始化
app.use(i18n.init)


app.get('/', function (req, res) {
console.log(req.getLocale());
var hello = res.__('Hello'); // --> Hallo`
return res.send(hello)
});


app.listen(8000, () => {
console.log("runing: http://localhost:8000/");
})

package.json

{
"scripts": {
"start": "node index.js",
"dev": "nodemon index.js"
},
"dependencies": {
"express": "^4.17.1",
"i18n": "^0.9.0",
"nodemon": "^2.0.3"
}
}

locales/en.json

{
"Hello": "Hello"
}

locales/zh.json

{
"Hello": "你好"
}
            </div>
目录
相关文章
编译cuttlefish内核遇到的问题
编译cuttlefish内核遇到的问题
|
XML Java 开发工具
在Android中使用ProgressBar显示进度
在Android中使用ProgressBar显示进度
1531 2
|
数据可视化 Shell 持续交付
express使用i18n实现国际化
express使用i18n实现国际化
596 0
|
Android开发 数据格式 XML
Android BottomSheet:List列表或Grid网格展示(3)
 Android BottomSheet:List列表或Grid网格展示(3) BottomSheet可以显示多种样式的底部弹出面板风格,比如常见的List列表样式或者Grid网格样式,以一个例子说明。
1287 0
|
5天前
|
存储 关系型数据库 分布式数据库
PostgreSQL 18 发布,快来 PolarDB 尝鲜!
PostgreSQL 18 发布,PolarDB for PostgreSQL 全面兼容。新版本支持异步I/O、UUIDv7、虚拟生成列、逻辑复制增强及OAuth认证,显著提升性能与安全。PolarDB-PG 18 支持存算分离架构,融合海量弹性存储与极致计算性能,搭配丰富插件生态,为企业提供高效、稳定、灵活的云数据库解决方案,助力企业数字化转型如虎添翼!
|
16天前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
1316 5