我在 github 和 stackoverflow 上浏览过很多帖子。我的 package.json 中有以下开发依赖项,用于 es6 到 es5 的转换。
"babel-cli": "^6.26.0", "babel-core": "^6.26.0", "babel-loader": "^6.0.0", "babel-preset-env": "^1.6.1", "babel-preset-es2015": "^6.24.1", "babel-preset-latest": "^6.24.1", "babelify": "^8.0.0", "浏览": "^15.0.0", "grunt-browserify": "^5.2.0", “咕噜”:“^1.0.1”, “咕噜声”:“^1.2.0”
我已经设置了一个 grunt 任务来使用 babelify 作为转换器和 browserify 将我的 es6 文件编译为 es5。
浏览器化:{ 分布:{ src: ['src/component/myes6.js'], dest: 'dist/src/component/myes5.js', 选项: { 转换: [ ['babelify',{预设:[[“es2015”,{松散:真,模块:假}]]}] ], 浏览器化选项:{ 调试:真 } } } }
我的 es6 js 文件正在导入一个节点模块,该模块是 es6 js 文件并作为函数导出。我尝试遵循来自各个论坛的许多建议,并查看了 babel/babelify/grunt-browserify 文档,但无法得出具体结论。
早些时候我认为,这可能是版本问题,但我现在使用的是所有 babel 6 版本和最新的 browserify/grunt-browserify 等。但是,我仍然看到以下错误:
ParseError:“import”和“export”可能只出现在“sourceType:module”中
任何帮助或指示将不胜感激。