对照老师代码敲了很多遍,始终没有报错但是无法转化成功。webpack3.10.0版本,初步考虑因为当时老师@babel最新版本和我现在@babel最新版本不一样(时隔快一年了),导致现在以@babel最新版下载的包版本有冲突的问题(不确定是否因为这个),故按照稳定版安装执行解决,给所有遇到这个问题的人。
实际代码中使用如下包(2018-11-23):
npm install –save-dev babel-loader babel-core babel-preset-env
npm install –save-dev babel-polyfill
npm install babel-plugin-transform-runtime –save-dev
npm install babel-runtime –save
(其余配置和老师代码一样,注意.babelrc里面引入的@babel/的地方换成稳定版本的)
然后出现一个报错:根据提示,修改babel-loader为版本7;原因是7版本对应core6使用版本;8版本对应使用core7版本
现在运行webpack,就出现了期待已久的_Set了
另外补充关于–save-dev 和 --save 使用情况个人理解
–save是安装在dependency生产依赖,
–save-dev是安装在devDependency开发依赖中,只是开发过程中需要的,babel这些插件就是协助打包编译的,所以安装在dev中即可。查看官网时候发现babel-runtime 使用的–save,百度查了一下原因:是babel-plugin-transform-runtime插件会polyfill es5不支持的语法特性,这些polyfill包就放在了babel-runtime里面,所以babel-runtime需要安装在生产依赖中,确保使用的时候可以找到这些包。
以为要从入门到放弃了,花了很长时间自己解决了,以上希望对需要的同学有帮助。如果内容有误,可评论做更正。