修补依赖的npm软件包

时间:2019-07-18 16:22:36

标签: npm webpack

我在jslib-html5-camera-photo中发现了一个错误,该错误阻止该库正确处理阻止摄像机访问的情况。

尽管报告的提出是出于不同的原因,但似乎还有valid patch

我的用例是通过react-html5-camera-photo提供错误处理程序的。由于jslib-html5-camera-photo中存在根本问题,因此永远不会调用错误处理程序。

我分叉了jslib-html5-camera-photo(已编译)。我还分叉了react-html5-camera-photo,仅更改了jslib-html5-camera-photo依赖项:

diff --git a/package.json b/package.json
index d1dca32..b60036e 100644
--- a/package.json
+++ b/package.json
@@ -35,7 +35,7 @@
   "homepage": "https://mabelanger.github.io/react-html5-camera-photo/",
   "license": "MIT",
   "dependencies": {
-    "jslib-html5-camera-photo": "3.0.2-beta.0"
+    "jslib-html5-camera-photo": "github:quickshiftin/jslib-html5-camera-photo#stable"
   },
   "devDependencies": {
     "autoprefixer": "7.1.6",

现在的问题是react-html5-camera-photo无法建立

Failed to compile.

./node_modules/jslib-html5-camera-photo/index.js
Module parse failed: Unexpected token (6:16)
You may need an appropriate loader to handle this file type.
| 
| console.log(document.getElementById('root'));
| ReactDOM.render(<AppReact />, document.getElementById('root'));
|

我不确定为什么要查看index.js,因为jslib-html5-camera-photo的package.json文件具有这些关键行

"main": "build/index.js",
  "scripts": {
    "prepublish": "npm run buildNpm",

不过似乎没有npm run buildNpm被调用……要使此设置正常工作,我不知道要做什么吗?感觉好像我缺少一些npm细节,但不确定是什么。

1 个答案:

答案 0 :(得分:0)

一旦我意识到该构建是由webpack驱动的,我就开始四处搜寻,并发现有关模块解析的webpack documentation

我还检查了 jslib-html5-camera-photo 的“稳定”版本( node_modules / jslib-html5内部的版本)中的 package.json -camera-photo 。我最终意识到npm中的软件包版本具有 build 目录,而没有 src 目录。

因此,通过在我两个分支的项目上推送 build 目录,我构建了 react-html5-camera-photo 的分支,然后能够成功包含在我的专案中。

更重要的是-我为 jslib-html5-camera-photo 需要的补丁程序可以像宣传的那样正常工作,现在 react-html5-camera-photo中的错误处理程序正在被调用!