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>
目录
相关文章
|
资源调度 前端开发
postcss-px-to-viewport 屏幕适配方案
postcss-px-to-viewport 屏幕适配方案
|
6月前
|
机器学习/深度学习 数据采集 数据可视化
Python/Anaconda双方案加持!Jupyter Notebook全平台下载教程来袭
Jupyter Notebook 是一款交互式编程与数据科学分析工具,支持40多种编程语言,广泛应用于机器学习、数据清洗和学术研究。其核心优势包括实时执行代码片段、支持Markdown文档与LaTeX公式混排,并可导出HTML/PDF/幻灯片等格式。本文详细介绍了Jupyter Notebook的软件定位、特性、安装方案(Anaconda集成环境与原生Python+PIP安装)、首次运行配置及常见问题解决方案,帮助用户快速上手并高效使用该工具。
|
11月前
|
PyTorch Linux 算法框架/工具
pytorch学习一:Anaconda下载、安装、配置环境变量。anaconda创建多版本python环境。安装 pytorch。
这篇文章是关于如何使用Anaconda进行Python环境管理,包括下载、安装、配置环境变量、创建多版本Python环境、安装PyTorch以及使用Jupyter Notebook的详细指南。
1295 1
pytorch学习一:Anaconda下载、安装、配置环境变量。anaconda创建多版本python环境。安装 pytorch。
|
11月前
|
数据处理 iOS开发 MacOS
Python 虚拟环境安装使用(Anaconda 实操完整版)
【10月更文挑战第4天】Anaconda 是一个开源的 Python 发行版,集成了常用科学计算与数据处理库,并提供了方便的包管理工具 `conda`。虚拟环境则允许在同一台机器上创建多个独立的 Python 运行环境,避免库版本冲突。通过下载 Anaconda、创建与激活虚拟环境、安装软件包及管理环境,可有效支持 Python 项目开发。
1864 8
|
JavaScript 测试技术 API
如何从 Vue 2 无痛升级到 Vue 3,一文搞定!
如何从 Vue 2 无痛升级到 Vue 3,一文搞定!
|
并行计算 IDE 数据可视化
IPython的进阶使用有哪些?
IPython的进阶使用有哪些?
|
消息中间件 JSON 并行计算
IPython工作原理
IPython的目标是为交互式和探索性计算创建一个全面、完整、易用的环境。本文带大家深入到IPython内部,看一下IPython的工作原理。
495 0
IPython工作原理
|
Web App开发 开发框架 缓存
IIS 部署网站对 OPTIONS 请求直接返回 40x 的处理
了解 OPTIONS 请求的基本功能、作用和大概拦截的原因,逐一排查,分别讲解在 asp.net (.net framework 时代)和 asp.net core (.net core/.net 时代) 的处理方式,OPTIONS 请求在不同的浏览器中默认请求行为表现不一致,通过设置 SetPreflightMaxAge (asp.net core 方式)的最大缓存时间,间接的优化...
588 0
IIS 部署网站对 OPTIONS 请求直接返回 40x 的处理
用jTessBoxEditor训练tesseract模型
用jTessBoxEditor训练tesseract模型
791 0
用jTessBoxEditor训练tesseract模型
|
资源调度 JavaScript 中间件
【详细教程】教你如何使用Node + Express + Typescript开发一个应用(二)
Express是nodejs开发中普遍使用的一个框架,下面要谈的是如何结合Typescript去使用。
1163 0
【详细教程】教你如何使用Node + Express + Typescript开发一个应用(二)