我正在开发没有任何JS框架的JS应用程序。我正在使用babel来支持箭头功能,等等。我想在应用程序中使用ES6模块。如果我转换包含导入和导出语句的JS代码并在浏览器中运行,则会收到错误消息,提示“未定义导出”。
我尝试了在线提供的其他解决方案。但是没有任何效果。
我不能仅通过添加babel和转堆来使用ES6模块吗?如果可以,我该如何实现?
在utils.js中
export default Utils = {
};
在app.js中
import Utils from './utils';
在gulpfile.js中
.pipe(babel({
presets: ['es2015']
}))
答案 0 :(得分:1)
虽然Babel可以将ES6模块语法转换为CommonJS模块语法,但它不会捆绑模块以用于根本不支持它们的环境。
为此,您应该使用Browserify,Webpack或其他模块捆绑器。
有关更多信息,您应该看到: