Google 闭包编译器:在外部声明属性

Google Closure Compiler: Declaring properties in externs

我一直在努力弄清楚如何做到这一点,但在 google 上没有找到太多,所以我将在此处记录我发现的内容。

我需要在外部库中定义一个 JS class,并在其上定义一些属性和方法。我可以做方法和 class,但在属性方面遇到了困难。

那是怎么做到的呢?

好的,假设我有一个名为 'Bob' 的外部 JS class。

我的闭包外部是:

/** @constructor */ var Bob = function() {};

如果我有一个方法 (flyAway(speed)) 我会添加:

Bob.prototype.flyAway = function(speed) {};

如果我有 属性 (currentSpeed),我会添加:

Bob.prototype.currentSpeed;

(最后一个,我在做(事后看来很愚蠢)Bob.currentSpeed;)