webpack升级报错之Module build failed (from ./node_modules/_vue-loader@13.7.3@vue-loader/index.js)

webpack3 升级webpack4 老的项目依赖经常遇见以下报错:

Module build failed (from ./node_modules/_vue-loader@13.7.3@vue-loader/index.js):
TypeError: Cannot read property 'vue' of undefined 
at Object.module.exports 
(E:\xxx\node_modules\_vue-loader@13.7.3@vue-loader\lib\loader.js:61:18)

报错原因:vue-loader版本不匹配原因;

升级到vue-loader@15 

 cnpm install  vue-loadern@15 -D

需要注意的是,vue-loader^15.x 需要在增加如下配置:

const VueLoaderPlugin = require('vue-loader/lib/plugin')

plugins: [
    new VueLoaderPlugin(),
]

顺便贴一下相应的依赖版本:

{
  "name": "",
  "version": "1.0.0",
  "description": "",
  "author": "",
  "private": true,
  "scripts": {
    "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
    "start": "npm run dev",
    "build": "node build/build.js"
  },
  "dependencies": {
    "axios": "^0.18.0",
    "babel-polyfill": "^6.26.0",
    "element-ui": "^2.4.11",
    "express": "^4.17.1",
    "filemanager-webpack-plugin": "^6.1.7",
    "jquery": "^3.3.1",
    "leaflet": "^1.8.0",
    "script-loader": "^0.7.2",
    "style-loader": "^0.23.1",
    "vue": "^2.5.2",
    "vue-router": "^3.0.1",
    "vue2-leaflet": "^2.7.1",
    "vuex": "^3.0.1"
  },
  "devDependencies": {
    "@jiaminghi/data-view": "^2.10.0",
    "autoprefixer": "^7.2.6",
    "babel-core": "^6.22.1",
    "babel-helper-vue-jsx-merge-props": "^2.0.3",
    "babel-loader": "^7.1.5",
    "babel-plugin-syntax-jsx": "^6.18.0",
    "babel-plugin-transform-runtime": "^6.23.0",
    "babel-plugin-transform-vue-jsx": "^3.7.0",
    "babel-preset-env": "^1.7.0",
    "babel-preset-stage-2": "^6.22.0",
    "chalk": "^2.0.1",
    "compression-webpack-plugin": "^9.0.0",
    "copy-webpack-plugin": "^4.0.1",
    "css-loader": "^2.1.0",
    "echarts": "^5.3.3",
    "echarts-gl": "^2.0.9",
    "extract-text-webpack-plugin": "^4.0.0-beta.0",
    "file-loader": "^1.1.4",
    "filemanager-webpack-plugin": "^6.1.7",
    "friendly-errors-webpack-plugin": "^1.6.1",
    "html-webpack-plugin": "^3.2.0",
    "node-notifier": "^5.1.2",
    "node-sass": "^4.9.0",
    "optimize-css-assets-webpack-plugin": "^3.2.0",
    "ora": "^1.2.0",
    "portfinder": "^1.0.13",
    "postcss-import": "^11.0.0",
    "postcss-loader": "^2.1.6",
    "postcss-url": "^7.2.1",
    "rimraf": "^2.6.0",
    "sass-loader": "^7.0.1",
    "semver": "^5.3.0",
    "shelljs": "^0.7.6",
    "swiper": "^4.5.1",
    "uglifyjs-webpack-plugin": "^1.1.1",
    "url-loader": "^1.1.2",
    "vue-loader": "^15.10.1",
    "vue-style-loader": "^4.1.2",
    "vue-template-compiler": "^2.7.14",
    "webpack": "^4.46.0",
    "webpack-bundle-analyzer": "^3.0.4",
    "webpack-cli": "^3.3.12",
    "webpack-dev-server": "^3.11.3",
    "webpack-merge": "^4.2.2"
  },
  "engines": {
    "node": ">= 10.0.0",
    "npm": ">= 6.0.0"
  },
  "browserslist": [
    "> 1%",
    "last 2 versions",
    "not ie <= 8"
  ]
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值