nodejs下babel编译es6后异常定位助手:source-map-support

使用es6甚至es7写代码是愉快的,然而由于兼容性原因,我们不得不使用babel把es6代码转成es5的,但这样会有一个问题,那就是出现错误的时候错误栈根据编译后代码而不是es6代码中的位置,这就给定位问题带来一定的麻烦。

浏览器是支持source maps的,babel也提供了编译生成source maps功能,但node不是浏览器,原生不支持source maps,但是我们可以通过第三方包来实现这个功能。

这里就找到了一个叫做 source-map-support 的包,只需要在es6的脚本顶部加上:

require('source-map-support').install();
然后babel编译的时候加上 -s 参数生成source maps即可,尝试一下抛出异常,会发现 error stack中的文件位置成功被替换成了es6源代码中的位置。

-完-

转载于:https://my.oschina.net/cxz001/blog/652499

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据您提供的引用内容,问题中的错误信息"F:\nodejs\\node.exe: --openssl-legacy-provider is not allowed in NODE_OPTIONS"是由于在环境变量NODE_OPTIONS中设置了--openssl-legacy-provider参数引起的。请注意,这个参数不被允许在NODE_OPTIONS中使用。 为了解决这个问题,您需要将环境变量NODE_OPTIONS中的--openssl-legacy-provider参数删除或注释掉。这样,您的软件应该就能正常打开了。如果您不知道如何编辑环境变量,可以按照以下步骤进行操作: 1. 在Windows操作系统中,右键点击"此电脑"(或"我的电脑"),选择"属性"。 2. 在打开的窗口中,点击"高级系统设置"。 3. 在系统属性窗口中,点击"环境变量"按钮。 4. 在"用户变量"或"系统变量"部分,找到名为NODE_OPTIONS的变量,并点击"编辑"按钮。 5. 在编辑变量窗口中,删除或注释掉--openssl-legacy-provider参数。 6. 点击"确定",关闭所有打开的窗口。 完成以上步骤后,您的环境变量将不再包含--openssl-legacy-provider参数,这应该解决了您软件无法打开的问题。请注意,修改环境变量可能需要重新启动您的计算机才能生效。<span class="em">1</span><span class="em">2</span> #### 引用[.reference_title] - *1* [HbuilderX运行打包项目时报node.exe: --openssl-legacy-provider is not allowed in NODE_OPTIONS的解决...](https://blog.csdn.net/zhu_liu_kun/article/details/130840556)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [npm info: node: --openssl-legacy-provider is not allowed in NODE_OPTIONS](https://blog.csdn.net/cptwjtptp/article/details/128895605)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值