如何解决ParseError: 'import' 和 'export' 可能只与 'sourceType: module' 一起出现,browserify
我正在使用 django-compressor 并且我想在我的项目中使用 es5/es6 功能。我将预编译器选项设置如下:
NODE_MODULES = BASE_DIR / 'node_modules'
COMPRESS_PRECOMPILERS = (
('text/javascript','browserify {{infile}} -t {node_modules}/babelify -o {{outfile}} --presets {node_modules}/@babel/preset-env'.format(node_modules=NODE_MODULES)),('module','browserify {{infile}} -t {node_modules}/babelify -o {{outfile}} --presets {node_modules}/@babel/preset-env'.format(node_modules=NODE_MODULES)),)
如您所见,browserify 是全局安装的,而 babelify 和 @babel/preset-env 是本地安装在项目中的。
从文档 @babel/preset-env
现在是推荐使用的预设,但我收到以下错误:
ParseError: 'import' and 'export' may appear only with 'sourceType: module'
根据我的理解,当使用 babel/preset-env 时,您不需要需要任何其他的前置预设,例如babel-preset-es2015 等,对吗?如果是,此问题的可能原因是什么?
解决方法
虽然该命令运行良好,但似乎在我指定预设的方式上存在语法错误,无论如何我已经修复了:
COMPRESS_PRECOMPILERS = (
('text/javascript','browserify {{infile}} -o {{outfile}} -t [ {node_modules}/babelify --presets [ {node_modules}/@babel/preset-env ] ]'.format(node_modules=NODE_MODULES_LOCAL)),('module',)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。