2

私はJohn Resig の Simple JavaScript Inhertance@lendsを使用してクラスを定義し、それらを JSDocと注釈で文書化して@constructsいますが、NetBeans はコード補完を提供していません。これは、名前空間を使用して定義したモジュールで機能します。これは、それらを直接参照しているためです。単純なクラスの例を次に示します。

MyClass = Class.extend(
    /** @lends MyClass.prototype */
    {
        /** @constructs */
        init: function () {
            console.log('init');
        },

        foo: function () {
            console.log('foo');
        }
    }
);

var c = new MyClass();
c.  <-- ctrl-space only shows built-in methods like hasOwnProperty() and toString()

NetBeans でコード補完が利用できるように、これらのクラスを文書化する方法を知っている人はいますか?

4

2 に答える 2

1

NetBeans は@lends、 、@constructs@memborOfまたは同様のタグをまだサポートしていません。7.4 と 8.0 向けに設定されていますが、7.0 かそこらから報告されているため、すぐに実装されるとは思いません。2 つの回避策Class.extend()のうちの 2 つ目は、最初にメソッドを含む (以前の) 匿名オブジェクトをクラスに割り当てることによって機能します。

プロトタイプ

/** @class */
var Canine;
Canine = function() {};
Canine.prototype = props;

/** @type Canine */ var canine = new Canine();

匿名オブジェクト

/** @class */
var Feline = {
    purr: function() { console.log('meow'); },
    fall: function() { console.log('landed on feet'); }
};
Feline = create(Feline);

/** @type Feline */ var feline = new Feline();

@type注: これは、NetBeans 7.4 パッチ 1 のコメントがなくても機能します。

于 2013-12-05T22:58:39.920 に答える
0

最新バージョン (この記事の執筆時点) はNetBeans 7.3 Beta 2です。JavaScript のオートコンプリートとデバッグがサポートされています。また、Chrome でも動作し、NetBeans と Chrome 間のラウンドトリップ更新を提供します。これが JavaScript 開発作業に役立つかどうかを確認してください。

于 2012-12-11T19:31:46.297 に答える