我的公司在我们的 JSP 中使用自定义标签来包装 JavaScript。我无法让 IntelliJ 将这些标签的内容视为 JavaScript。这是一个简单的示例,说明我们的标签是什么样子的。
<ui:script>
//Include javascript here...
alert('Any code in here is treated as JavaScript');
</ui:script>
有什么建议么?我尝试使用语言注入(inject),但找不到正确的设置。
我刚刚注意到这个问题更多地与在
<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>
最佳答案
这就是 IntelliJ IDEA 12 中对我有用的方法。
这是带有自定义标记 ( aui:script
) 的 JSP 片段,它呈现一些 javascript 代码:
如您所见,它是纯文本,即 alt+enter 不提供任何建议等。
这里是 XML 标签注入(inject) 我添加了 语言注入(inject)设置 :
请务必选择正确的命名空间。在此之后,相同的代码看起来像这样(打开文件后预计会有一些小的延迟):
它的颜色不同,如您所见,aui:script
之间的代码标签知道 javascript 上下文,有可用的建议等。
如果这对你有用,请尝试,我没有像我想要的那样使用它:)
关于jsp - 如何在 JSP 的自定义标记中使用 IntelliJ 语言注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11544672/