我必须在TS组件中使用一个外部js文件,就像这样:
var myObj;
function setObj(newObj) {
myObj= newObj;
return myObj;
}
function my_object() {
this.getA= function () {
return this.A;
}
this.getB= function () {
return this.B;
}
this.getC = function () {
return this.C;
}
}
在.ts文件中以这种方式声明后,我可以调用函数setObj
:
declare function setObj(obj: MyObj);
但是我还需要调用其他函数(getA,getB,getC),但是我不知道怎么做。
我试过在调用setObj时返回对象,然后调用函数,如下所示:
let objReturned = setObj(myObj);
objReturned.getA()
但是它告诉我getA
不是一个函数。
如何在js中调用这些嵌套函数?
答案 0 :(得分:1)
您会想要类似的东西:
declare interface SetObjC {
getC: () => void;
}
declare interface SetObjB {
getB: () => SetObjC
}
declare interface SetObjA {
getA: () => SetObjB;
}
declare function setObj(obj: MyObj): SetObjA;