在XSLT中,当涉及到'if'时,保持代码DRY的首选方法是什么?
目前我正在这样做:
<xsl:if test="select/some/long/path">
<element>
<xsl:value-of select="select/some/long/path" />
</element>
</xsl:if>
我宁愿只写一次“select / some / long / path”。
答案 0 :(得分:6)
我明白你的观点。当路径长度为200个字符时,代码就会变得混乱。
您可以将其添加到变量
<xsl:variable name="path" select="select/some/long/path"/>
<xsl:if test="$path">
<xsl:value-of select="$path" />
</xsl:if>
答案 1 :(得分:0)
区别在于:
<xsl:if test="select/some/long/path">
<xsl:value-of select="select/some/long/path" />
</xsl:if>
和
<xsl:value-of select="select/some/long/path" />
?如果它不存在,value-of将输出一个空字符串(即:nothing)。那为什么要测试?