Webpack - Yaml -> JSON -> 提取文件

2024-01-10

我有一个包含一些翻译的 YAML 文件。我需要将这些文件转换为 JSON 文件。我尝试过使用yaml-import-loader and json-loader但我收到错误。

这是我的设置:

const ExtractTextPlugin = require('extract-text-webpack-plugin');

const extractEnglish = new ExtractTextPlugin('lang/en.js');

module.exports = {
  entry: [
    './src/locales/application.en.yml',
  ],
  output: {
    filename: 'english.js',
  },
  module: {
    strictExportPresence: true,
    rules: [
      {
        test: /\.en\.yml$/,
        use: extractEnglish.extract({
          use: [
            // { loader: 'json-loader' },
            {
              loader: 'yaml-import-loader',
              options: {
                output: 'json',
              },
            }],
        }),
      },
    ],
  },
  plugins: [
    extractEnglish,
  ],
};

我得到的错误是:

Users/xxx/Documents/Project/node_modules/extract-text-webpack-plugin/dist/index.js:188
            chunk.sortModules();
                  ^

TypeError: chunk.sortModules is not a function
    at /Users/xxx/Documents/Project/node_modules/extract-text-webpack-plugin/dist/index.js:188:19

无论是否相同的错误json-loader是否评论。

我真的不明白出了什么问题。

版本: “webpack”:“2.6.1”, "extract-text-webpack-plugin": "^3.0.0", "json-loader": "^0.5.7",


不确定这是否对您的情况有帮助,但我最近找到了解决 i18n 加载问题的方法。我这样做是为了预先将 YAML 提取到 JSON 文件中,因为我使用 Angular-Translate 并且需要动态按需加载文件。我避免使用 extract-text-webpack-plugin 并仅使用加载器:文件加载器和 yaml-loader。

首先,我在源代码开头附近设置了 .yaml 文件的导入(在我的例子中,是供 webpack 处理的特定导入文件链)

 import "./i18n/en.user.yaml";

我更新了 webpack 配置以将 YAML 转换为 JSON 并使其可动态加载(所有内容都源自我的“src”目录,因此是上下文):

 rules: [{
   test: /.\.yaml$/,
   use: [{
     loader: 'file-loader',
     options: {
       name: '[path][name].json',
       context: 'src'
      }
    },{
      loader: 'yaml-loader'
    }]
  }]

这将翻译我的 yaml 文件并将它们导出到我的公共目录,在本例中为“/i18n/en.user.json”。

现在,当 Angular-translate 通过 $http 按需上传我配置的 i18n 设置时,它已经具有解析的 YAML,并且避免了必须在前端使用 js-yaml (或类似的)解析它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Webpack - Yaml -> JSON -> 提取文件 的相关文章

随机推荐

  • 实现 Comparable 以使用字符串按字母顺序排序

    我希望有一个可比较的对象 在这种情况下在 TreeSet 中使用它 我的对象有一个名称字段 我希望它按字母顺序排序 我首先想到我可以使用字符串的 unicode 值并简单地进行减法 但是 AA 会在 Ab 之后 我是这样开始的 public
  • 连接 RAISERROR 中的消息

    这里正确的语法是什么 If timestamp lt Select PromoStartTimestamp From promo RAISERROR Code not valid until Select PromoStartTimesta
  • Android/Java 上的数据报传输层安全 (DTLS)

    有人在 Android 上使用过 DTLS 或者有支持 DTLS 的开源 Java 实现吗 在 Android 上保护 UDP 流量的其他选项有哪些 纯 Java 中尚不支持 DTLS 我们最终通过 JNI 使用 OpenSSL 我怀疑你会
  • 如何使用 maven-bundle-plugin 从导入包中排除版本号?

    我在使用 maven bundle plugin 生成的 MANIFEST MF 时遇到问题 由于某种原因 当我在
  • 运行 PHPUnit 时出错

    当我尝试运行时出现以下错误phpunit 从我的项目的测试文件夹中 PHP Fatal error Call to undefined method PHP CodeCoverage Filter getInstance in usr sh
  • 排除 Spring-data-rest 资源的某些字段

    我正在尝试将 Spring data rest 与 spring data mongodb 一起使用来公开只读资源 我遇到的问题是我想对我的文档有不同的看法 假设我在文档中有一些私人信息 我不想公开它们 所以我尝试了几种方法 我读了这篇文章
  • Plotly python离线-点击时访问url?

    是否可以配置一个plotly https plot ly python绘图以便用户在单击某个数据点时被带到特定的 url 我的预期用途是条形图 我希望能够单击一个条形图 然后转到一个 url 每个条形图都配置有不同的 url 我正在使用pl
  • 如何在 highcharter 中悬停时获得系列突出显示?

    Highcharts 具有这个巧妙的功能 当将鼠标悬停在柱形图中的条形上时 整个系列都会突出显示 最好实时查看here https www highcharts com demo column negative 在 R 包装器中highch
  • 使用 dev_appserver.py 进行覆盖不包括我的项目文件

    我运行以下命令覆盖范围3 6 https pypi python org pypi coverage Appengine 1 8 0 64 位 Ubuntu 13 04 上的 Python 2 7 4 coverage run dev ap
  • 如何在 C# 中检测任何 Excel 单元格的更改?

    我正在编写一个 Excel VSTO 插件 并且希望获取特定工作表中的单元格更改事件 如何才能做到这一点 检查Excel Application SheetChange事件处理程序 基本上 只要任何工作表中的任何单元格发生更改 它就会触发
  • 使用 Carrierwave 重命名上传的文件

    我正在使用 Carrierwave 上传文件 并且可以正常工作 我的问题是尝试更改上传文件的名称 在生成的 uploader rb 中有一个我认为我应该使用的方法 def filename something jpg if original
  • vim 键映射参考

    我刚刚安装了 command t 插件以及将其映射到 cmd t 而不是 Leader t 的内容 我对 vim 相当陌生 我不知道按键映射的符号是什么 在哪里可以找到在 vim 中映射组合键时使用的符号的参考 vim 的一个原则是 未记录
  • 如何在 javascript 中从弹出窗口进行打印?

    我有一个 Net 应用程序 它动态创建一个小型 HTML 页面 并使用 javascript document open 方法将其弹出在新窗口中 具有该功能的一切都工作正常 现在我想向打印该页面的 HTML 页面添加一个按钮 我尝试使用以下
  • Boolean.TRUE == myBoolean 与 Boolean.TRUE.equals(myBoolean)

    是否有过使用的情况equals Boolean and 处理时会返回不同的结果Boolean物体 Boolean TRUE myBoolean Boolean TRUE equals myBoolean 我在这里考虑的不是原始类型 而是布尔
  • 如何将 JFrame 放入 Java Swing 中现有的 JPanel 中?

    I have an open source java swing application like this http i47 tinypic com dff4f7 jpg http i47 tinypic com dff4f7 jpg 您
  • Wix - 安装然后运行 ​​powershell 脚本

    我知道有几篇关于 Wix 和 PowerShell 脚本的帖子 但在尝试了这些帖子中的解决方案后 我仍然没有得到我想要的结果 为了解释我的情况 我创建了一个 Wix 安装项目 它将从我的本地计算机 运行 Windows 7 获取 2 个 P
  • 针对特定文件扩展名的 Android 意图过滤器?

    我希望能够从网络下载具有特定扩展名的文件 并将其传递给我的应用程序来处理它 但我无法弄清楚意图过滤器 文件类型不包含在 mimetypes 中 我尝试使用
  • 在 Agda 中对 ST monad 进行建模

    最近这个所以问题 https stackoverflow com questions 33975270 can a st like monad be executed purely without the st library促使我在 Ha
  • 使用 Wordpress Super Cache 从缓存中排除动态值

    我正在使用超级缓存插件 一段时间以来 我一直在寻找解决方案 但没有成功 我需要禁用文件中一个函数的缓存functions php add shortcode custom counter example shortcode function
  • Webpack - Yaml -> JSON -> 提取文件

    我有一个包含一些翻译的 YAML 文件 我需要将这些文件转换为 JSON 文件 我尝试过使用yaml import loader and json loader但我收到错误 这是我的设置 const ExtractTextPlugin re