3

当我在 ng 为应用程序提供服务时遇到阻塞问题时,我试图使用我的 android 智能手机运行一个常规的 angular 10 Web 应用程序:ng serve 挂在复制资产上,显示:“92% 处理额外的资产 copy-webpack-plugin”。

有没有办法强制 ng serve 抛出异常或任何有意义的消息,以便我能够进一步调查? 在使用(Android OS/termux)ng serve处理额外资产时,永远挂断在 92% 。copy-webpack-plugin以下是到目前为止完成的详细信息和步骤:

角度版本:

角版

新应用:

新应用

Ng serve --verbose

吴服务--详细

4

2 回答 2

4

在深入挖掘 ng serve 功能后得到了解决方法:只需删除 angular.json 文件中的 assets 部分,如下所示: "assets": [],而不是"assets": [ "src/favicon.ico", "src/assets" ],

由于某种原因,webpack 插件在 android/linux 下运行时无法将这两个资产复制到内存中(尽管文件系统中存在这两个文件)。有时会对此进行深入研究,但目前这种解决方法将解决问题。

更新:原来是复制文件夹的问题!由于某种原因,尝试复制整个文件夹(例如 src/assets / 或任何文件夹)时,copy-webpack-plugin 挂起。因此解决方法是通过名称提及文件,并省略 angular.json 文件中资产部分中的任何文件夹路径。像下面显示的东西会像魅力一样起作用: "assets": [ "src/favicon.ico", "src/assets/vid.mp4", "src/assets_bis/data.dat ], 听起来很奇怪,但我将不再深入研究这个问题,因为到目前为止我已经证明在这一点上已经足够了。

于 2020-07-13T14:18:09.027 回答
1

当我按照上面的答案检查angular.json文件时,我发现有两个assets数组,然后我将它们都从更改"assets":["src/favicon.ico","src/assets"]"assets":["src/favicon.ico"](注意:我的assets目录是空的,所以我跳过了。如果你有一些文件在里面提到它的名字两个数组),然后ng serve从应用程序的目录运行,它工作!谢谢。

于 2020-10-17T04:55:38.647 回答