npm 包 egg-sequelize-translation 使用教程

简介

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


猜你喜欢

  • npm 包 aliyun-vod-upload-js 使用教程

    前言 随着互联网的高速发展,视频已成为人们在信息传播和交流中的必要手段。而视频上传的需求也越来越普遍。为了提升用户的上传体验,优化上传流程,我们可以选择一些上传工具扩展我们的业务。

    3 年前
  • npm 包 aiden-doc 使用教程

    前言 随着前端技术不断的发展,包管理工具 npm 也越来越重要。其中,aiden-doc 是一个高效、易用的 npm 包,能够帮助我们更好的管理文档,并生成静态文档网站。

    3 年前
  • npm 包 eslint-config-edjopato 使用教程

    在前端开发中,我们经常需要关注代码质量和规范性。为了能够更好地满足这个需求,我们可以使用一些代码规范检查工具。其中,eslint 是一个非常流行的代码检查工具,可以在编辑器中提供实时的代码规范检查和提...

    3 年前
  • npm 包 mcss-loader-webpack 使用教程

    mcss-loader-webpack 是一个 npm 包,用于在 webpack 中使用 mcss 预编译器。mcss 是一种 CSS 预编译器,它支持类似于 LESS 和 SASS 的变量、条件、...

    3 年前
  • npm 包 @igloo-be/netlify-cms-widget-object 使用教程

    NPM 包管理器是前端开发中不可或缺的一个工具。NPM 包的作用是让我们可以轻松地引入第三方库、框架、组件等,从而提高我们的开发效率。在本篇文章中,我们将介绍一个名为 @igloo-be/netlif...

    3 年前
  • npm 包 @igloo-be/netlify-cms-widget-string 使用教程

    介绍 在 Netlify CMS 中,Widget 是指用于在 CMS 表单中添加自定义控件的插件。 @igloo-be/netlify-cms-widget-string 就是一个用于添加 Stri...

    3 年前
  • npm 包 nativescript-modal-datetimepicker-fixed-color 使用教程

    在开发移动应用的过程中,时间选择器是一个不可或缺的组件。在 NativeScript 中,我们可以借助 nativescript-modal-datetimepicker-fixed-color 这个...

    3 年前
  • npm 包 @keep2zero/jsdoc-webpack-plugin 使用教程

    在前端开发中,文档的编写和管理是非常重要的一环。而 JSDoc 是一种为 JavaScript 代码生成 API 文档的标准,它采用类似于 JavaDoc 的文档注释语法进行编写。

    3 年前
  • npm 包 require-suffix 使用教程

    在前端开发中,我们经常需要使用到一些第三方的库或者工具,这些库或者工具通常会被打包成 npm 包并发布到 npm 仓库中,供开发者使用。在我们使用这些 npm 包时,通常需要使用 require 或者...

    3 年前
  • npm 包 @igloo-be/netlify-cms-backend-bitbucket 使用教程

    最近,@igloo-be/netlify-cms-backend-bitbucket 这个 npm 包引起了很多人的关注。它是一个使用 Bitbucket 作为 Netlify-CMS 后端的插件,许...

    3 年前
  • npm 包 vcontrol-client 使用教程

    简介 vcontrol-client 是一个基于 WebSocket 协议的前端通信库,是 vcontrol-server 的前端实现之一。它提供了简单易用的 API,可以方便地与 vcontrol-...

    3 年前
  • npm 包 @igloo-be/netlify-cms-backend-test 使用教程

    前言 在前端应用程序中,内容管理系统(CMS)是一个极其重要的组件。然而,不同 CMS 提供商之间的差异还是很大的。为了解决这一问题,Netlify 提供了这个 npm 包 @igloo-be/net...

    3 年前
  • npm 包 @igloo-be/netlify-cms-lib-auth 使用教程

    简述 @igloo-be/netlify-cms-lib-auth 是一个用于 Netlify CMS 应用程序的认证库,它使您能够在 Netlify CMS 应用程序中使用任何认证提供程序。

    3 年前
  • npm 包 @igloo-be/netlify-cms-widget-boolean 使用教程

    前言 @igloo-be/netlify-cms-widget-boolean 是一个基于 Bool 类型的布尔型组件,常见于使用 Netlify CMS 时对于一些布尔型数据的输入。

    3 年前
  • npm 包 @igloo-be/netlify-cms-widget-number 使用教程

    前言 在如今互联网迅速发展的时代,网站建设已经成为各行各业都需要的一项技能。而网站建设也需要前端工程师的背景知识和技术实力。在实际的网站构建中,经常涉及到网站的交互功能,而其中之一便是输入数字。

    3 年前
  • npm 包 @konfy/vue-ui 使用教程

    简介 @konfy/vue-ui 是一套基于 Vue.js 开发的前端 UI 组件库,其中包含了许多常用的 UI 组件,如按钮、表单、弹窗等,方便开发者快速搭建页面和进行开发。

    3 年前
  • npm 包 amp-validator-webmaster 使用教程

    简介 amp-validator-webmaster 是一个 NPM 包,它提供了一个简单的方法来验证 AMP 页面是否符合 Google 开发的 AMP HTML 规范。

    3 年前
  • npm 包 vuepress-theme-egoist 使用教程

    介绍 vuepress-theme-egoist 是一款适用于 VuePress 的主题,由知名开源作者 EGOIST 开发,它具有响应式设计,易于自定义,具有良好的可读性和可用性等特点。

    3 年前
  • npm 包 fourthpu 使用教程

    在前端开发中,很多时候需要使用一些常见的功能,如日期格式化、正则验证、字符串操作等,这时候我们需要编写大量的代码来完成这些操作。为了方便开发者,社区中已经有很多开源的第三方库来实现这些常见的功能,其中...

    3 年前
  • npm 包 express-boilerplate-mvc 使用教程

    简介 express-boilerplate-mvc 是一个帮助你快速搭建 Node.js Web 应用程序的 npm 包。它基于 Express 框架,采用 MVC 设计模式,具有良好的可扩展性和可...

    3 年前

相关推荐

    暂无文章