0.背景

anguar项目。分为主包和子包,子包推送到npm私有仓库中,然后主包在packjson中引入子包的版本号,把主包打包。

打包过程中,开始报错:

ERROR in ./node_modules/xxxx/fesm5/xxxxxxx.js
Module not found: Error: Can’t resolve ‘app/routes/xxxxx/xxxx/xxx.component’ in ‘D:\xxx\xxx\xx\xxx\xx-\node_modules\xxxx\fesm5’

这个报错的意思是没有正常引用子包。

根本原因是子包引用不对,比如下面这样的引用:

import { xxxxComponent } from ‘app/routes/xxxxx/xxx/xxxx.component’;

我们需要把上面这样的引用改成下面这样:

import { xxxxComponent } from ‘../../routes/xxxxx/xxx/xxxx.component’;

重新打包,发布到npm仓库,然后主包重新引用子包就可以了。

分类: 常见报错