自定义Webpack包装器库未安装依赖项

时间:2018-11-15 13:35:54

标签: npm webpack

我编写了一个包装库,供webpack内部使用,并预先完成了所有需要的加载程序和配置内容,因此我只需要将包装库安装到每个项目中,然后添加条目配置即可。 到目前为止,该方法仍然有效,但对于我的最新克隆项目却没有。

我尝试删除node_modules文件夹和package-lock.json文件并执行干净的npm i,但还是一样。

webpack-cli已安装,但具有webpack作为对等依赖项,它说未安装。当我将其添加到项目的package.json时,它可以工作,但随后尝试npm run build时会导致多个错误,导致找不到应该与该库一起安装的任何装载程序。

项目package.json

"scripts": {
    "build": "webpack --progress --colors --hide-modules",
    "dev": "npm run build --",
    "watch": "npm run dev -- --watch",
    "prod": "NODE_ENV=production npm run build"
  },
  "devDependencies": {
    "@namespace/lib": "git+ssh://git@internal:js/lib.git"
  },

库package.json

"dependencies": {
    "@babel/core": "^7.1.2",
    "@babel/preset-env": "^7.1.0",
    "autoprefixer": "^9.3.1",
    "babel-loader": "^8.0.4",
    "copy-webpack-plugin": "^4.5.4",
    "css-loader": "^1.0.0",
    "extract-text-webpack-plugin": "^4.0.0-beta.0",
    "file-loader": "^2.0.0",
    "image-webpack-loader": "^4.4.0",
    "lodash": "^4.17.11",
    "node-sass": "^4.9.4",
    "postcss-loader": "^3.0.0",
    "sass-loader": "^7.1.0",
    "vue-loader": "^15.4.2",
    "vue-style-loader": "^4.1.2",
    "vue-template-compiler": "^2.5.17",
    "webpack": "^4.23.1",
    "webpack-cli": "^3.1.2"
  },
  "devDependencies": {
    "eslint": "^5.8.0",
    "standard": "^12.0.1"
  }

1 个答案:

答案 0 :(得分:0)

我删除了

"@namespace/lib": "git+ssh://git@internal:js/lib.git"
在项目的package.json文件中

行,并执行了

npm i -D git+ssh://git@internal:js/lib.git

现在安装了所有库的依赖项。

在此之前,我刚从npm i中现有行的新克隆项目中运行package.json。我不明白为什么这会有所作为,但是看来确实如此!

//编辑:

另一件事起作用:

git reset --hard
rm package-lock.json
rm -rf node_modules # deleting already installed modules from the previous tries
npm i

因此,从全新的git clone角度来看,它只是删除锁定文件,然后再次然后安装。 但没有预先存在的node_modules文件夹。