gpt4 book ai didi

javascript - 有没有办法避免在 Apache Wicket 中转义 javascript 标签?

转载 作者:行者123 更新时间:2023-11-30 13:26:22 25 4
gpt4 key购买 nike

我正在尝试使用 KnockoutJS 和默认的 jQuery.tmpl 模板引擎,我的标记由 Apache Wicket 输出。

我发现 Wicket 正在将我的 javascript tmpl 模板从:

<script type="text/x-jquery-tmpl" id="myTemplate">
Hello, ${world}!
</script>

进入这个:

<script type="text/x-jquery-tmpl" id="myTemplate">
/*<![CDATA[*/
Hello, ${world}!
/*]]>*/
</script>

这把 KnockoutJS 搞得一团糟。

如果 Wicket 允许您禁用此类功能,您有什么想法吗?

最佳答案

<!--/*--><![CDATA[/*><!--*/\n与 KnockoutJS 混淆的字符串在 Wicket 的 JavascriptUtils 中定义。 .看看它的writeJavascript()方法。

它将无条件地将此前缀/后缀附加到通过 HeaderResponse.renderJavascript() 做出的每个标题贡献中或 HeaderResponse.renderOnEventJavascript() .

我从来不需要改变它,但这种行为似乎是一成不变的,Wicket 似乎不允许您为您的应用程序指定自定义 HeaderResponse 类,因此您可以覆盖 JavascriptUtils 的使用。

你是如何贡献 js 的?它是在页面构建时动态生成的吗?如果你用 HeaderContributor.renderJavascriptReference() 贡献了你的 javascript你可能会解决这个问题,尽管这可能不适合你。

不太相关,但是 this discussion在 Apache Wicket 用户列表中可能表明真正的问题在于 KnockoutJS。

关于javascript - 有没有办法避免在 Apache Wicket 中转义 javascript 标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8304801/

25 4 0