对于Angular和JavaScript都很新,所以不确定这是否是一个微不足道的但我不能谷歌这个。
我需要使用专有的遗留JS库,它正在进行一些非常定制的基于XML的编组/解组/远程处理。它的所有值对象都有toXML
和toObject
方法,并且还使用这些方法扩展了String
等库存类。
我正试图让它从Angular中运行 - 我导入了源JS文件,并在例如。
declare var Discrete;
declare var String;
我能够处理最终调用的方法,例如。 Discrete.toXML()
但不是调用String.toXML()
的那些 - 它在运行时因TypeError: String.toXML is not a function
而失败。
也试过
declare interface String {
toXML() : any;
}
但它没有帮助。
有什么想法让它发挥作用?谢谢!
答案 0 :(得分:0)
String
是字符串类型构造函数,我想你需要扩展接口,如下所示:
interface String {
toXML() : any;
}
不确定,但可能需要在string.d.ts
文件中定义它。
你也可以这样试试:
declare global {
interface String {
toXML() : any;
}
}