0

Eclipse Juno を使用して静的 Web プロジェクトを開発しています。私のプロジェクトでは、いくつかの異なる JavaScript ファイルを使用しています。ファイルの 1 つに関数が含まれています。

function IconData(size, url) {
    this.size = size;
    this.url = url;
}

IconData 型のオブジェクトを返す別の関数があります。

function PageInfo() {
    this.iconData = function() {
        var iconData = new IconData();
        iconData.size = 10;
        iconData.url = "http://somepage.com/image.png";
        return iconData;
    }
}

別の JavaScript ファイルで、PageInfo のインスタンスを作成し、関数 iconData を呼び出します。

var page = new PageInfo();
// populate stuff
var icon = page.iconData();

アイコンを入力すると。次に CTRL+SPACE でコード アシストを開始すると、Eclipse で次のメッセージ ポップアップが表示されます。

デフォルトの提案なし

デフォルトの提案なし

テンプレートの提案はありません

テンプレートの提案はありません

ただし、次のようなアイコンデータの新しいインスタンスを作成すると:

var iconData = new IconData();

次に、iconData と入力します。次に CTRL-SPACE を押すと、コード アシストがポップアップし、すべての可能性が表示されます。

コードアシストの作業

私の質問は、コード アシストが最初のシナリオでは機能しないのに、2 番目のシナリオでは機能するのはなぜですか?

ありがとうございました。

PS私はGoogleにEclipseでJavaScriptのコードアシストを有効にする方法を持っています.JavaScript開発ツールがインストールされていることを確認する必要があると述べたサイトをいくつか見つけました。

4

1 に答える 1

1

JSDTの制限だと思います。JSDTを拡張して JS 補完、ハイパーリンク、ホバーを改善するtern.javaをインストールすることをお勧めします。

JS ファイルをフォルダーにコピーし、プロジェクトを tern として変換し、フォルダーでスクリプト パスを構成します。その方法については、はじめにをお読みください。

ここにあなたのケースのスクリーンショットがあります(ここではscriptsフォルダがスクリプトパスとして設定されています):

tern.java で完成

tern.java は Eclipse Luna で開発されているため、Juno ではなくこのバージョンを使用することをお勧めします。

于 2014-08-04T07:26:34.453 に答える