我有一个非常简单的 d.ts 映射,如下所示:
interface CordovaClass {
exec(success:Function, error:Function, ...rest:any[]);
}
declare var Cordova:CordovaClass;
我后来在 NativeCordova.ts 中引用了它:
/// <reference path="../lib/cordova.d.ts" />
但是,当我在同一个文件中调用以下内容时:
Cordova.exec(success, error, tag, command, params);
浏览器抛出此错误:
Uncaught ReferenceError: Cordova is not defined
映射相当新,但从我可以从其他映射(如 jquery.d.ts)中得知,这应该可以工作。
任何帮助将不胜感激。:)
更新
我可以通过用小写的“C”声明 var 来完成这项工作:
declare var cordova:CordovaClass;
然后这样称呼它:
cordova.exec(success, error, tag, command, params);
这是因为这是 cordova 用来引用自身的变量,就像 jQuery d.ts 所做的那样。
*exec 不是您可以使用 Cordova 进行的真正调用,但这不是我遇到的问题。