vscode报错:babel : 无法加载文件 C:\Users\AppData\Roaming\npm\babel.ps1,因为在此系统上禁止运行脚本。

  • Post author:
  • Post category:其他




报错背景

在使用命令

babel es6/01.js -o dist/001.js

把es6文件转换成es5文件的时候,报错信息如下:

babel : 无法加载文件 C:\Users\AppData\Roaming\npm\babel.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/ 
fwlink/?LinkID=135170 中的 about_Execution_Policies。
所在位置 行:1 字符: 1
+ babel es6/01.js -o dist/001.js
+ ~~~~~
    + CategoryInfo          : SecurityError: (:) [],PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess



解决方案

看到网上解决方案说可以试试把vscode打开的时候选择以管理员运行,我试了试,不好使。然后我就有在终端输入了命令

get-ExecutionPolicy

,得到了

Restricted

的结果,重新设置执行策略为可远程的

set-ExecutionPolicy RemoteSigned

,发现报错,报错信息如下:

set-ExecutionPolicy : 对注册表项“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell”的访问被拒绝。 要更改默认   
(LocalMachine)作用域的执行策略,请使用“以管理员身份运行”选项启动 Windows PowerShell。要更改当前用户的执行策略,请运行 "Set-ExecutionPolicy    
-Scope CurrentUser"。
所在位置 行:1 字符: 1
+ set-ExecutionPolicy RemoteSigned
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : PermissionDenied: (:) [Set-ExecutionPolicy], UnauthorizedAccessException
    + FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.SetExecutionPolicyCommand

解决方式:

win+r

打开命令框,输入

PowerShell

,然后输入命令

Set-ExecutionPolicy -Scope CurrentUser

,出现ExecutionPolicy,再输入

RemoteSigned

即可。

再次执行

babel es6/01.js -o dist/001.js

命令发现可以了。



版权声明:本文为weixin_44826970原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。