我正在使用" Day CQ Link Checker Transformer"对于项目上的URL映射,
但我需要根据angularJS转换按钮上的链接。
但是当我尝试在Day CQ Link Checker Transformer上添加Data-navurl
时,
它不会转换网页上的URL。
答案 0 :(得分:2)
Link Checker Transformer不适用于Angular应用程序,因为您的标记包含在<script>
标记中。您需要使用JSP标记库或HTL Sling Model强制重写URL。
更新:
为了进一步解释...... LinkCheckerTransformer
与Sling rewriting pipeline中的任何其他变换器一样工作,它响应来自HTML解析器的SAX事件。这意味着它可能不会重写HTML页面中的所有链接,除非它被配置为生成事件。例如,<input>
标记可用于保存开放重定向 - 除非将INPUT
标记添加到HTML解析器并将input:value
添加到重写元素列表中,否则不会重写这些标记。您可以尝试将SCRIPT
标记添加到HTML解析器中,但我不确定解析的行为方式......
答案 1 :(得分:1)
Day CQ Link Checker Transformer
不会检查{DOM}结构的text
级别上的任何内容。它将HTML视为XML文档,规则仅应用于元素和属性。
在您的情况下,角度模板是<script>
元素的一部分,但它被视为文本,因此会被跳过。
这与编写普通JS以在页面中注入链接没有什么不同。链接检查器将优雅地忽略脚本文本。