如何在 JSP 的自定义标签中使用 IntelliJ 语言注入

问题描述 投票:0回答:2

我的公司在 JSP 中使用自定义标签来包装 JavaScript。 我无法让 IntelliJ 将这些标签的内容视为 JavaScript。 这是我们的标签的一个简单示例。

<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>
jsp intellij-idea
2个回答
14
投票

这就是 IntelliJ IDEA 12 中对我有用的东西。

这里是带有自定义标签 (

aui:script
) 的 JSP 片段,它呈现一些 javascript 代码:

before

如您所见,它是纯文本,即 alt+enter 没有给出任何建议等。

这是我在语言注入设置中添加的XML标签注入

setting

请务必选择正确的命名空间。之后,相同的代码如下所示(打开文件后预计会出现一些轻微的延迟):

after

它的颜色不同,正如您所看到的,

aui:script

标签之间的代码了解javascript上下文,提供建议等。

如果这对你有用,请尝试一下,我没有像我想要的那样使用它:)


0
投票
在较新版本的 IntelliJ Ultimate 中,只需将光标放在标签内,按 alt+enter -> 注入语言或引用 -> JavaScript。

© www.soinside.com 2019 - 2025. All rights reserved.