昨天我将ng cli和core更新为8.0.0v。之后,成功启动一个新应用程序并运行它。有一次在构建应用程序并在localhost:4200上提供服务时,我打开控制台,出现错误:ng.probe不是函数
我尝试研究此问题,但没有相关信息。
实际结果: ng serve / npm启动后,控制台中出现问题:Uncaught TypeError:ng.probe不是函数。 Current console state Current angular state
预期结果: 控制台中没有错误
答案 0 :(得分:18)
如果有人正在寻找替代方案:
ng.probe($0)
在Ivy中,请尝试以下操作:
ng.getComponent($0);
在这里找到它,https://juristr.com/blog/2019/09/debugging-angular-ivy-console/
我想在这里添加它以完成操作。
关于ng.getComponent
的注意事项:您必须将焦点标签(例如<app-my-component>
)放在开发人员工具元素中,以使其位于$ 0中。它不会在层次结构中搜索父组件(就像ng.probe
一样)。
答案 1 :(得分:5)
如果您使用的是Augury扩展名,请禁用或删除它。然后,检查控制台。我遇到了同样的问题,因此删除了Augury。
Augury具有一组不同的调试API,这就是发生此错误的原因。
答案 2 :(得分:3)
答案 3 :(得分:1)
在tsconfig.app.json中,您也可以在没有常春藤的情况下运行
"angularCompilerOptions": { "enableIvy": false }
答案 4 :(得分:0)
这是带有here讨论的Augury chrome扩展名的内容。希望对您有所帮助:)
答案 5 :(得分:0)
在创建新项目并将CLI更新到v8.3.4(此时最新)之后,我遇到了同样的错误
使用npm install [item] @version,我必须将CLI还原到v8.0.3 并在适用的情况下将Angular核心和相关的角度依赖性还原为8.0.1。
我也将打字稿恢复为3.4.5,因为我是Angular 8.0.1所需的更高版本。
有点痛苦,但为我解决了这个问题。希望对别人有帮助。
注意:您可能必须还原到与我在此处使用的版本不同的版本,或者确保所使用版本的一致性。这只是解决此问题的指南。
答案 6 :(得分:0)
这与这个问题并不完全相关,但谷歌搜索将我带到了这里。所以,我把我的问题的解决方案留在这里,希望它能帮助面临同样问题的其他人。
当我使用 dotnet sdk(版本 5.0.300) 创建 angular 项目并在本地运行它时,我遇到了 encrypted: ☼⟈⮪e
decrypted: awesome
错误。该项目使用的是 @angular/core v8.2.12 和 @angular/cli v8.3.29。
我能够通过使用 -
更新这些包来解决问题ng.probe not a function
或
ng update @angular/core@8 @angular/cli@8