13

私の会社では、JSP でカスタム タグを使用して JavaScript をラップしています。これらのタグのコンテンツを JavaScript として扱うように IntelliJ を取得できません。これは、タグがどのように見えるかの簡単な例です。

<ui:script>
  //Include javascript here...
  alert('Any code in here is treated as JavaScript');
</ui:script>

助言がありますか?言語インジェクションを使用してみましたが、適切な設定が見つかりません。

<ui:script>この問題は、タグ内で JSP 固有の言語を使用することに関連していることに気付きました。厄介な例 (すべてを壊している ${selectedReportID} タグに注意してください):

<ui:script>
    new Kamino.DependencyLoader({
        source: [
            '/static/js/modules/folders/Report.js'
        ],

        onSuccess: function () {
            new Kamino.Report({
                id: '${selectedReportID}',
                element: 'content-reporting-report-list'
            });
        }
    }).load();
</ui:script>
4

1 に答える 1

13

これは、IntelliJ IDEA 12 で私にとってうまくいったことです。

aui:script一部の JavaScript コードをレンダリングするカスタム タグ ( ) を含む JSP スニペットを次に示します。

前

ご覧のとおり、これはプレーン テキストです。つまり、alt+enter で候補が表示されることはありません。

以下は、Language Injection 設定で追加したXML タグ インジェクションです。

設定

必ず正しい名前空間を選択してください。この後、同じコードは次のようになります (ファイルを開いた後、多少の遅延が予想されます)。

後

色が異なり、ご覧のaui:scriptとおり、タグ間のコードは JavaScript のコンテキストを認識しており、提案が利用可能です。

これがうまくいくかどうか試してみてください。私はこれを好きなだけ使用していません:)

于 2013-01-09T19:40:12.287 に答える