Unbundeling使用browserify构建的预构建的Javascript文件

时间:2016-12-31 11:19:43

标签: browserify browserify-shim

我有一个第三方库,非uglified,使用browserify捆绑。不幸的是,原始资源不可用。

有没有办法将它拆分成不同的文件/来源。

1 个答案:

答案 0 :(得分:1)

您应该可以使用browser-unpack“解开”预先构建的Browserify软件包。

它将生成如下的JSON输出:

[
  {
    "id": 1,
    "source": "\"use strict\";\r\nvar TodoActions = require(\"./todo\"); ... var VisibilityFilterActions = require(\"./visibility-filter\"); ...",
    "deps": {
      "./todo": 2,
      "./visibility-filter": 3
    }
  },
  {
    "id": 2,
    "source": "\"use strict\";\r\n ...",
    "deps": {}
  },
  {
    "id": 3,
    "source": "\"use strict\";\r\n ...",
    "deps": {}
  },
  ...
]

将JSON输出转换为可能需要的源文件应该是相当简单的。请注意require文字(如"./todo")的映射位于deps。也就是说,"./todo"所需的模块对应id 2的来源。

还有一个browserify-unpack工具 - 将内容写为文件 - 但我没有使用它。