我正在使用gulp、browserify和babelify来在项目中使用ES6语法。但一旦我导入了一个同样使用ES6编写的node_module,gulp就会抛出一个错误:'import' and 'export' may appear only with 'sourceType: module'
我已经在babelify的github页面上阅读了提出的解决方案。简而言之,有两种可能性:
- 将一个browserify选项添加到受影响的node_module的package.json中。
- 配置gulp,使browserify尝试使用babelify转换所有文件(并为不必要的文件添加忽略选项)。
第一种选择将防止其他人能够克隆我的项目并立即运行它。也许有一种解决方法,可以使用npm postinstall脚本吗?
第二个选项似乎过于复杂。是否有更优雅的解决方案?
only
选项。您可以将其配置为全局转换,并使用only
来限制它转换的node_modules
。 - cartant