npm 包 egg-sequelize-translation 使用教程

阅读时长 6 分钟读完

简介

egg-sequelize-translation 是基于 Egg.js 和 Sequelize 数据库 ORM 框架的多语言翻译插件。本插件支持中英文及其他语言的翻译,为前端和后端开发人员提供方便的国际化解决方案。

安装

使用 npm 安装 egg-sequelize-translation:

使用

配置

config/plugin.js 文件中启用插件:

config/config.default.js 文件中配置插件:

-- -------------------- ---- -------
-------------- - ------- -- -
  ----- ------ - ------- - ---

  -- ---

  --------------------------- - -
    ---------- --------- --------- -- ---------
    ---------------- ------- -- ------
  --

  -- ---

  ------ -------
--

数据库表结构

本插件需要创建表格来存储翻译数据。在创建数据库之前需要使用 Sequelize CLI 工具生成迁移文件:

编辑生成的迁移文件 XXXXXXXXXXXXX-create-translation-table.js

-- -------------------- ---- -------
---- --------
-------------- - -
  --- ----- ---------------- ---------- -- -
    ----- ------------------------------------------ -
      --- -
        ---------- ------
        -------------- -----
        ----------- -----
        ----- -----------------
      --
      ---- -
        ----- ----------------
      --
      ------ -
        ----- ----------------
      --
      --------- -
        ----- ----------------
      --
      ---------- -
        ---------- ------
        ----- --------------
      --
      ---------- -
        ---------- ------
        ----- --------------
      -
    ---
  --
  ----- ----- ---------------- ---------- -- -
    ----- -----------------------------------------
  -
--

创建数据库表格:

模板扩展

在模板需要使用翻译时,您需要在模板引擎中添加翻译方法(如下为 egg-mate 模板引擎中的实现):

-- -------------------- ---- -------
-------------- - -
    -------- -
        --- ----- -------- -- -
            --- ------ - ----------------
            --- ----- - ----------------------- --------
            -- ------- -
                ------ ------------------- ----- --- --------- - ----- - ---------------------- ---------
            - ---- -
                ------ ----
            -
        -
    -
--

在模板中使用翻译方法:

代码扩展

在控制器或者服务中需要调用翻译方法时,可以使用 ctx.app.translate 方法:

-- -------------------- ---- -------
----- - ---------- - - ---------------

----- -------------- ------- ---------- -
  ----- ------- -
    ----- - --- - - -----
    ----- ----- - ------------------------- -------- ------------
    ----- ------- - ----- ------------------------------
    -------- - -
      ------
      ----- ------------------------------- ------------
      ------------ -------------------------------------- -----------
    --
  -
-

-------------- - ---------------

管理翻译数据

您可以使用命令行工具来管理翻译数据:

-- -------------------- ---- -------
- --- ------------- --------------- ----- --------- ----
- --- ------------- --------------- ----- --------- ----------- -----
- --- ------------- ---------------- -----
  ------------------------
  - ---  - -----         -
  ------------------------
  - ----- - ----       -
  ------------------------
- --- ------------- ------------------ ----- ---------

总结

egg-sequelize-translation 提供了一种简便的国际化解决方案,使得前后端开发人员可以在 Egg.js 和 Sequelize ORM 框架的基础上快速开发多语言应用程序。通过本文的学习,您可以掌握 egg-sequelize-translation 的基本使用方法,并对如何优化和扩展有初步了解。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600668eed9381d61a3540ce7

纠错
反馈