为什么Powershell不运行Angular命令?

Ami*_*ram 3 javascript powershell angular-cli angular

我已经开始学习Angular了,但是我注意到Windows中的powershell每当执行如下的angular命令时都会出现错误:

ng new new-app
Run Code Online (Sandbox Code Playgroud)

要么

ng serve
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误:

ng : File C:\Users\< username >\AppData\Roaming\npm\ng.ps1 cannot be loaded because 
running scripts is disabled on this system. For more information, see 
about_Execution_Policies at https:/go.microsoft.com/fwlink/?LinkID=135170.
At line:1 char:1
+ ng serve
+ ~~
    + CategoryInfo          : SecurityError: (:) [], PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess
Run Code Online (Sandbox Code Playgroud)

PS我尝试在cmd中的这些命令,它的工作原理。

Ami*_*ram 37

从目录C:\ Users \ <用户名> \ AppData \ Roaming \ npm \中删除ng.ps1,然后尝试清除C:\ Users \ <用户名> \ AppData \ Roaming \ npm-cache \下的npm缓存

  • 对于任何想知道其原理的人:出于安全考虑,Windows 默认情况下会阻止运行未签名的 powershell 脚本。奇怪的是,为什么 Angular 团队保留了该脚本,而它实际上是破坏 Angular CLI 的默认行为,并且启用未签名脚本执行的系统只是少数。删除这个 powershell 脚本只会阻止 Powershell 尝试执行 .ps1 文件并回退到旧的 cmd 脚本,这也可以工作,但从未受到 Microsoft 的限制。 (8认同)
  • 在没有清理现金的情况下工作 (7认同)
  • 仅供参考,清除缓存对我来说不是必需的。 (6认同)
  • 太好了,但是为什么呢?它是之前 Angular 安装遗留下来的并且不再被正确调用吗?为什么它不再起作用了? (3认同)
  • 这是现货! (2认同)
  • 事实上,我不知道。我什至没有在任何地方找到任何提及该文件的信息,所以我认为该文件确实没有必要,所以我只是将其删除 (2认同)

mah*_*a k 12

步骤1

首先,您必须打开命令提示符并运行此命令。

set-ExecutionPolicy RemoteSigned -Scope CurrentUser

第2步

现在您必须在系统上运行第二个命令。这个命令是:

Get-ExecutionPolicy

步骤3

要查看他们的策略,您需要在命令提示符中运行以下命令:

Get-ExecutionPolicy -list

https://www.c-sharpcorner.com/article/how-to-fix-ps1-can-not-be-loaded-because-running-scripts-is-disabled-on-this-sys/


小智 9

无法加载script1.ps1,因为此系统上禁用了正在运行的脚本。有关更多信息,请参见http://go.microsoft.com/fwlink/?LinkID=135170上的 about_Execution_Policies

发生此错误是由于采取了一项安全措施,未经您批准,该措施将不允许在系统上执行脚本。为此,您可以打开具有管理权限的Powershell(在主菜单中搜索powershell,然后从上下文菜单中选择“以管理员身份运行”),然后输入:

set-executionpolicy remotesigned
Run Code Online (Sandbox Code Playgroud)


Sta*_*ley 5

我通过运行以下命令解决了我的问题

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

  • 这对我有用,谢谢 (10认同)
  • 这应该是新安装的正确答案。 (5认同)
  • 在此评论后,我输入“a”以应用于所有政策。谢谢你! (2认同)
  • 在某些我们无法设置这些权限的企业环境中,这会失败。 (2认同)