服务成功后,控制台出现错误。我该如何解决?
ERROR in ./node_modules/resolve/lib/sync.js
Module not found: Error: Can't resolve 'fs' in 'project-path\node_modules\resolve\lib'
ERROR in ./node_modules/resolve/lib/async.js
Module not found: Error: Can't resolve 'fs' in 'project-path\node_modules\resolve\lib'
ERROR in ./node_modules/tslint/lib/utils.js
Module not found: Error: Can't resolve 'fs' in 'project-path\node_modules\tslint\lib'
答案 0 :(得分:2)
您必须提供2种不同版本的文件,它们在代码中使用fs
作为2个服务提供者,一个在服务器模块中带有fs,另一个在不带fs的情况下提供。
如果这没有太大意义,请在此处查看解决方案详细信息:
https://github.com/ngx-translate/core/issues/754#issuecomment-353616515
看来此问题不是特定于Angular 9的。在此处查看Angular早期版本中的问题示例和解决方案:Update to Angular v6 - Module not found: Error: Can't resolve 'fs'
其中一个依赖项可能有问题。在这种情况下,您可以尝试告诉Webpack(Angular在后台使用)在浏览器环境(非Node)中忽略fs
。
有关此问题的示例和解决方案的详细信息,请参见:https://stackoverflow.com/a/52367183/146656
答案 1 :(得分:0)
第1步:必须正确备份并按照以下步骤操作
remove node_modules
remove package-lock.json
npm cache clean -f
(可选)如果已经完成上述操作,请重新启动计算机。并再次启动节点并调整角度。
2nd:将以下内容添加到karma.conf.js
webpack: { node: { fs: 'empty', } }