我正在尝试使用带有angular7的node-jose库与JWE一起使用。该库使用zlib作为依赖项,并在编译时抛出错误:
ERROR in ./node_modules/zlib/lib/zlib.js
Module not found: Error: Can't resolve './zlib_bindings' in '~\WebApp\node_modules\zlib\lib'
我打开了'zlib.js'文件,内容如下:
module.exports = require('./zlib_bindings');
问题是所需的文件不存在。我检查了库的其余部分,整个库中没有这样的文件。
我搜索了整个互联网,没有人描述过和我一样的问题。关于'node-jose'库有一些讨论,但这些问题都与'zlib'无关。
如果只有人会说他们有同样的错误,我将非常感激。提前致谢!
我找到了答案。
Angular在编译时没有显示错误,但在浏览器中显示错误。这是因为浏览器没有集成“节点”库,因此无法启动“zlib”库。在'node_modules'中安装'zlib'库没有帮助,因为它已被弃用。
使用'browserify-zlib'库并在所有依赖项中更改... require('browserify-zlib')修复了该问题。