Javascript 在测试中从@types/sjcl调用成员或构造函数时出现TypeError
我正在尝试扩展一个项目。我添加了sjcl和@types/sjcl。我可以成功地定义类型,例如Javascript 在测试中从@types/sjcl调用成员或构造函数时出现TypeError,javascript,typescript,types,typescript-typings,Javascript,Typescript,Types,Typescript Typings,我正在尝试扩展一个项目。我添加了sjcl和@types/sjcl。我可以成功地定义类型,例如 var x = sjcl.BigNumber | undefined private _secret: sjcl.SjclEcdsaSecretKey 但当我这样做的时候: sjcl.ecc.curves.k256 或 测试运行抱怨如下: TypeError:无法读取未定义的属性“curves” 或 TypeError:sjcl.bn不是构造函数 这在测试时发生。这是测试命令: nyc mocha
var x = sjcl.BigNumber | undefined
private _secret: sjcl.SjclEcdsaSecretKey
但当我这样做的时候:
sjcl.ecc.curves.k256
或
测试运行抱怨如下:
TypeError:无法读取未定义的属性“curves”
或
TypeError:sjcl.bn不是构造函数
这在测试时发生。这是测试命令:
nyc mocha --require ts-node/register --require source-map-support/register --full-trace --timeout 40000 ./test/**/**.spec.ts
我不熟悉TypeScript/npm/javascript,有其他语言的背景。
非常感谢您的帮助。
var
用于定义变量而不是类型,类型
是;在正常的js表达式中,“|”是按位的,或者,你确定你的方法正确吗?这不是TypeScriptrelated@Austaras这部分实际上有效;)。考虑:a)var bn:sjcl.BigNumber |未定义
b)var bnn=new sjcl.bn(1)
它在b上失败。@AluanHaddad它使用@types/sjcl包装器,这就是它引用所有调用的方式。。。这是一些与某件事的关系。我更感兴趣的是指出问题并解决它的过程。它与typescript无关,因为它是一个运行时错误var
用于定义变量not type,type
是;在正常的js表达式中,“|”是按位的,或者,你确定你的方法正确吗?这不是TypeScriptrelated@Austaras这部分实际上有效;)。考虑:a)var bn:sjcl.BigNumber |未定义
b)var bnn=new sjcl.bn(1)
它在b上失败。@AluanHaddad它使用@types/sjcl包装器,这就是它引用所有调用的方式。。。这是一些与某件事的关系。我更感兴趣的是指出问题并解决它的过程。它与typescript无关,因为这是一个运行时错误
nyc mocha --require ts-node/register --require source-map-support/register --full-trace --timeout 40000 ./test/**/**.spec.ts