gpt4 book ai didi

angular - crypto.randomBytes 不是 Angular 函数

转载 作者:太空狗 更新时间:2023-10-29 18:30:20 26 4
gpt4 key购买 nike

我正在导入 ethereumjs-wallet在 angular4 中,

import EthereumWallet from 'ethereumjs-wallet';
var wallet = EthereumWallet.generate();
const jsV3 = wallet.toV3(passwd);

库中的代码如下所示

var privKey = crypto.randomBytes(32)

抛出一个错误

ERROR Error: Uncaught (in promise): TypeError: crypto.randomBytes is not a function TypeError: crypto.randomBytes is not a function TypeError: crypto.randomBytes is not a function at Function.webpackJsonp.../../../../ethereumjs-wallet/index.js.Wallet.generate

如何解决?

最佳答案

运行

npm install crypto-browserify --save

之后,您需要创建一个文件来修复(解决方法)...像这样:

var fs = require('fs');// PACKAGE_ERROR and FILE_ERROR is shown on your errorfs.readFile('./node_modules/[PACKAGE_ERROR]/[FILE_ERROR]', 'utf8', function (err,data) {  if (err) return console.log(err);  var result = data.replace('require(\'crypto\');', 'require(\'crypto-browserify\');');  fs.writeFile('./node_modules/[PACKAGE_ERROR]/[FILE_ERROR]', result, 'utf8', function (err) {     if (err) return console.log(err);  });});

现在,您需要在 package.json 中添加安装后代码

..."scripts":{"postinstall":"node [fixFileName].js",...

最后,运行:

npm install
ng serve OR ng build

希望对您有所帮助!

关于angular - crypto.randomBytes 不是 Angular 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47486774/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com