当前,我正在使用Blockstack(一个分散的Web项目)进行项目。我想用Angular(特别是Angular 7)构建我的应用程序。但是,我遇到了一个问题,该问题在Angular 6中以standard behavior的形式引入,即Angular不会编译被视为“服务器端”模块的模块。这对Angular的几乎所有用法都有意义,因为它 是一个前端框架,但是,鉴于Blockstack的核心设计意味着所有代码都在客户端运行,因此正式的Blockstack node module导入一些“服务器端”模块以在客户端上下文中使用。
我已经将这个问题发布到了Blockstack论坛上,以查看是否有人已经遇到了这个问题并找到了解决方案,但是我得到的唯一解决方案是使用angular 5或为节点模块分叉存储库,尝试自己修复。这些选项都不是特别吸引人的,所以我决定在这里问一下(stackoverflow是更大的论坛),看看是否有人可以解决此问题。
当我运行npm start
时,它无法以此作为输出进行编译:
WARNING in ./node_modules/triplesec/lib/prng.js
Module not found: Error: Can't resolve 'crypto' in '/home/origin/Dev/blockstack/gitd/ng-web/node_modules/triplesec/lib'
WARNING in ./node_modules/asn1.js/lib/asn1/api.js
Module not found: Error: Can't resolve 'vm' in '/home/origin/Dev/blockstack/gitd/ng-web/node_modules/asn1.js/lib/asn1'
WARNING in ./node_modules/key-encoder/node_modules/asn1.js/lib/asn1/api.js
Module not found: Error: Can't resolve 'vm' in '/home/origin/Dev/blockstack/gitd/ng-web/node_modules/key-encoder/node_modules/asn1.js/lib/asn1'
ERROR in ./node_modules/blockstack/lib/encryption.js
Module not found: Error: Can't resolve 'crypto' in '/home/origin/Dev/blockstack/gitd/ng-web/node_modules/blockstack/lib'
ERROR in ./node_modules/blockstack/lib/keys.js
Module not found: Error: Can't resolve 'crypto' in '/home/origin/Dev/blockstack/gitd/ng-web/node_modules/blockstack/lib'
ERROR in ./node_modules/blockstack/lib/wallet.js
Module not found: Error: Can't resolve 'crypto' in '/home/origin/Dev/blockstack/gitd/ng-web/node_modules/blockstack/lib'
ERROR in ./node_modules/blockstack/lib/storage/hub.js
Module not found: Error: Can't resolve 'crypto' in '/home/origin/Dev/blockstack/gitd/ng-web/node_modules/blockstack/lib/storage'
ERROR in ./node_modules/jsontokens/lib/cryptoClients/secp256k1.js
Module not found: Error: Can't resolve 'crypto' in '/home/origin/Dev/blockstack/gitd/ng-web/node_modules/jsontokens/lib/cryptoClients'
ERROR in ./node_modules/cipher-base/index.js
Module not found: Error: Can't resolve 'stream' in '/home/origin/Dev/blockstack/gitd/ng-web/node_modules/cipher-base'
ERROR in ./node_modules/hash-base/index.js
Module not found: Error: Can't resolve 'stream' in '/home/origin/Dev/blockstack/gitd/ng-web/node_modules/hash-base'
有人有解决方法或任何建议吗?