简介
在前后端分离的开发中,通常需要对前端应用进行国际化处理,使得项目能够支持多种语言。在 AdonisJS 中,我们可以通过使用 @emilioforrer/adonis-translatable 这个 npm 包轻松实现国际化。
@emilioforrer/adonis-translatable 是一款 AdonisJS 的国际化解决方案,它支持多语种内容的本地化和翻译,能够非常方便的在前后端分离开发中进行应用的国际化。
安装
在 AdonisJS 项目中,使用以下命令安装 @emilioforrer/adonis-translatable:
npm i --save @emilioforrer/adonis-translatable
使用
1. 配置
首先,在 start/app.js
文件中注册 @emilioforrer/adonis-translatable:
-- -------------------- ---- ------- ----- --------- - - ------------------------------------------ --------------------------------------------- -- --- ------------------------------------------------------------------- -- -- --------------------------------- -- --- - -------------- - - -- --- --------- -- --- -
然后,在 .env
文件中添加语言支持:
# 支持的语言列表 LOCALES=zh-CN,en-US # 默认语言 DEFAULT_LOCALE=en-US
2. 数据库迁移
adonis make:migration create_translations_table
在 database/migrations/xxxxxxx_create_translations_table.js
文件中编写数据表迁移代码:
-- -------------------- ---- ------- ---- ------- ----- ------ - ------------- ----- ----------------------- ------- ------ - -- -- - --------------------------- ------- -- - ------------------ ----------------------------------- --------------------------------- -------------------------------- ------------------------------------ ------------------ -- - ---- -- - ------------------------- - - -------------- - -----------------------
然后运行 adonis migration:run
命令执行数据库迁移。
3. 配置语言文件
在 resources/lang
目录下创建语言文件夹,并在其中添加对应语言的语言文件。例如:zh-CN.json
和 en-US.json
。
其中,zh-CN.json
文件的示例如下:
{ "messages": { "hello": "你好,世界!" } }
en-US.json
文件的示例如下:
{ "messages": { "hello": "Hello, world!" } }
4.使用
通过使用 use('+App/Libraries/Translatable')
,使用注入方式调用 Translatable
类的方法。
例如,获取语言文件中的内容:
-- -------------------- ---- ------- ---- ------- ----- ------------ - ---------------------------------- ----- ----------------- - ----- ----- -- -------- -------- -- - ------ ------------------------------------ - - -------------- - -----------------
总结
通过使用 @emilioforrer/adonis-translatable,我们可以轻松的实现 AdonisJS 的国际化处理。在这篇文章中,我们详细介绍了如何在 AdonisJS 项目中引入和使用 @emilioforrer/adonis-translatable,包括配置、数据库迁移、配置语言文件以及使用方法。相信对于初次接触国际化处理的前端开发者来说,这篇文章能够提供很有帮助的指导和学习意义。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066b5951ab1864dac66e6e