首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能解析ECPair的所有参数:(?,?,?)

不能解析ECPair的所有参数:(?,?,?)
EN

Stack Overflow用户
提问于 2017-11-10 21:42:50
回答 1查看 287关注 0票数 1

我尝试在一个新的bitcoinjs-lib 4应用程序中实现我所做的:

代码语言:javascript
复制
npm install bitcoinjs-lib --save
npm install @types/bitcoinjs-lib --save

我的app.component.ts:

代码语言:javascript
复制
import { Inject } from '@angular/core';
import { Component } from '@angular/core';
import { HDNode, Transaction, ECPair } from 'bitcoinjs-lib'

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  title = 'app';

  constructor(private ecPair: ECPair){
    console.log(this.ecPair.getAddress())
  }
}

编译成功,但我在浏览器中获得:

代码语言:javascript
复制
Uncaught Error: Can't resolve all parameters for ECPair: (?, ?, ?).
    at syntaxError (compiler.js:466)

下面是ECPair中的node_modules:

代码语言:javascript
复制
export class ECPair {
    constructor(d: BigInteger, Q?: null, options?: { compressed?: boolean, network?: Network });

    constructor(d: null | undefined, Q: any, options?: { compressed?: boolean, network?: Network }); // Q should be ECPoint, but not sure how to define such type

    d: BigInteger;

    getAddress(): string;
...
}

我知道他不知道如何实例化它,因为不同的参数类型,我如何修复它?我试过用@Inject,但也无法解决。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-10 21:48:37

你必须适当地提供。在您的@NgModule中,您应该使用如下内容:

代码语言:javascript
复制
@NgModule({
  ...
  providers: [
    ...
    { ECPair, useFactory:()=>new ECPair(d,Q,options) }
  ]
})

dQoptions指定适当的参数。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47231555

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档