TypeError:无法读取未定义的属性“babel”

Posted

技术标签:

【中文标题】TypeError:无法读取未定义的属性“babel”【英文标题】:TypeError: Cannot read property 'babel' of undefined 【发布时间】:2018-11-18 04:02:30 【问题描述】:

以下是我的包 json 文件。我已经成功安装了 node_modules。但得到错误:

“TypeError:无法读取未定义的属性'babel'”

在运行“webpack --watch”时。 如果有人知道这一点,请告诉我。

"axios": "0.16.2",
"babel-plugin-root-import": "^5.1.0",
"bootstrap": "3.3.7",
"chalk": "^2.3.0",
"chart.js": "^2.7.1",
"del": "^3.0.0",
"html-entities": "^1.2.1",
"jquery": "3.1.1",
"karma-es6-shim": "^1.0.0",
"leaflet": "1.0.*",
"less": "2.7.2",
"libphonenumber-js": "^1.2.12",
"lodash": "4.17.4",
"moment": "^2.19.1",
"store": "^2.0.12",
"url-loader": "0.5.8",
"vee-validate": "2.0.0-rc.7",
"vue": "2.4.2",
"vue-chartjs": "^2.7.2",
"vue-loader": "12.0.3",
"vue-paginate": "3.4.0",
"vue-resource": "1.2.1",
"vue-router": "2.3.1",
"vue-template-compiler": "2.4.2",
"vuejs-datepicker": "0.6.3",
"vuex": "^2.5.0"


 ,
  "devDependencies": 
    "babel-cli": "6.23.0",
    "babel-core": "6.23.1",
    "babel-loader": "6.3.2",
    "babel-preset-es2015": "6.22.0",

【问题讨论】:

【参考方案1】:

您的 babel-loader 版本似乎已过时。使用npm uninstall babel-loader 卸载它并使用npm i -D babel-loader 重新安装。您可能还需要更新到babel-preset-env 并删除babel-preset-es2015

https://babeljs.io/docs/en/env/#upgrading-to-babel-preset-env

【讨论】:

【参考方案2】:

对我来说,这是 webpackbabel-loader 之间的版本不匹配。

我有 babel-loader@6.2.0webpack@4.12.0,更新到 babel-loader@7.1.4 为我解决了这个问题。

【讨论】:

以上是关于TypeError:无法读取未定义的属性“babel”的主要内容,如果未能解决你的问题,请参考以下文章

TypeError:无法读取未定义的属性“findAll”(expressjs)

TypeError:无法读取未定义的属性(读取“问题”)

TypeError:无法读取未定义的属性“babel”

TypeError:无法读取未定义的属性(读取“匹配”):

TypeError:无法读取未定义的属性“存在”

TypeError:无法在 gitlab 中读取未定义的属性(读取“读取”)