大佬教程收集整理的这篇文章主要介绍了node.js – 使用babel/register冲突,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
require('babel/register'); require('index');
require('test');
并在“测试”包中:@H_874_7@
require('babel/register'); require('test/index');
抛出新错误(“只允许一个babel / polyfill实例”);@H_874_7@
但是如果我从“test”包中取出babel / register行,我会在“test”包的索引文件中收到以下错误:@H_874_7@
import fs from 'fs'; ^^^^^^ SyntaxError: Unexpected reserved word
我已经尝试使用System.import导入“test”包(使用BabelJS站点上指定的polyfill),但在这种情况下,我得到与上面相同的错误.我应该如何将一个包导入另一个包并保留使用ES6导入/导出和其他ES6功能的能力?@H_874_7@
编辑:我已经简化了一点,我仍然需要“测试”到第一个包,但我没有加载中间文件.相反,“test”的“main”文件设置为test / index.从理论上讲,现在它只是加载一个ES6模块,它应该能够注册.我仍然得到上述错误.@H_874_7@
你面临的问题是默认情况下,require(‘babel / register’)只会将你的系统设置为直接在模块内部转换文件,它不会处理node_modules.通常期望node_modules中的任何内容在发布到模块注册表时都会提前编译.@H_874_7@
一种选择是将ignore:false作为选项传递,例如require(‘babel / register’)({ignore:falsE});但这通常是一个坏主意,可能会导致其他问题.这将使Babel转换所有文件,但这并不总是一件安全的事情,因为并非所有JavaScript代码都保证是有效的ES6模块.@H_874_7@
最好的解决方案是提前转换测试模块.但是,如果这不起作用,则可以使用唯一选项为应该转换的路径指定正则表达式或glob.@H_874_7@
以上是大佬教程为你收集整理的node.js – 使用babel/register冲突全部内容,希望文章能够帮你解决node.js – 使用babel/register冲突所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。