Gulp 插件配置文档

miniprogram-i18n 在构建阶段依赖两个 Gulp 插件,分别是 @miniprogram-i18n/gulp-i18n-wxml@miniprogram-i18n/gulp-i18n-localesgulp-i18n-wxml 负责转译 wxml 文件中的 i18n 自定义语法,gulp-i18n-locales 则负责合并 i18n 定义文件,并进行预处理生成运行时所需的文件。

若使用 CLI 进行构建,则可忽略 Gulp 构建的配置。

安装

因此在使用 i18n 的构建插件之前,需要先安装相关依赖。

npm i -D gulp @miniprogram-i18n/gulp-i18n-locales @miniprogram-i18n/gulp-i18n-wxml

依赖安装完成之后,需要建立 gulp 所需的配置并引入 i18n 构建插件。示例如下:

const gulpWxmlTransformer = require('@miniprogram-i18n/gulp-i18n-wxml')
const gulpLocalesLoader = require('@miniprogram-i18n/gulp-i18n-locales')

function transpileWxml() {
  return src('src/**/*.wxml')
    .pipe(gulpWxmlTransformer())
    .pipe(dest('dist/'))
}
function mergeAndGenerateLocales() {
  return src('src/**/i18n/*.json')
    .pipe(gulpLocalesLoader({ defaultLocale: 'zh-CN', fallbackLocale: 'zh-CN' }))
    .pipe(dest('dist/i18n/'))
}

更详细的配置请参考 examples

gulp-i18n-wxml 配置

该构建函数支持如下参数:

interface Options {
  wxsPath: string,
  wxsModuleName?: string,
  i18nFunctionName?: string,
}
  • wxsPath

    指定 locales.wxs 所在路径,应与 gulp-i18n-locales 中的配置一致,默认为 src/i18n/locales.wxs

  • wxsModuleName

    指定 wxs 模块名称,默认为 i18n

  • i18nFunctionName

    指定 wxml 中的 i18n 函数名,默认为t,可修改为任意合法的函数名。

gulp-i18n-locales 配置

该构建函数支持如下参数:

interface Options {
  wxsFileName?: string
  jsFileName?: string
  defaultLocale?: string
  fallbackLocale?: string
}
  • wxsFileName

    指定 locales wxs 文件名,需以 .wxs 作为后缀,默认为 locales.wxs

  • jsFileName

    指定 locales js 文件名,需以 .js 作为后缀,默认为locales.js

  • defaultLocale

    指定默认语言,默认为 en-US。该值需与 i18n 定义文件名对应。

  • fallbackLocale

    指定备选语言,默认为 en-US。该值需与 i18n 定义文件名对应。在运行时无法找到对应语言下的文本时,会从备选语言中进行查找。注:该值无法在运行进行修改。