индекс в цикле XSL

Не импортируйте ваш лениво загруженный модуль в ваш основной app.module.ts. Это вызовет циклическую зависимость и выдаст ошибку, которую вы получаете.

15
задан jelovirt 1 June 2009 в 09:58
поделиться

2 ответа

Проблема с XSL в том, что вы не можете изменить переменную (это больше похоже на константу, которую вы устанавливаете). Таким образом, увеличение переменной счетчика не работает.

Неуклюжий обходной путь для получения последовательного счетчика (1,2,3,4, ...) - вызвать position (), чтобы получить итерацию тега «abc», и еще один вызов position (), чтобы получить итерация вложенного тега def. Затем вам нужно будет умножить итерацию «abc» на количество содержащихся в ней тегов «def». Вот почему это «неуклюжий» обходной путь.

Если у вас есть два вложенных тега def, XSL будет выглядеть следующим образом:

<xsl:for-each select="abc">
    <xsl:variable name="level1Count" select="position() - 1"/>
    <xsl:for-each select="def">
        <xsl:variable name="level2Count" select="$level1Count * 2 + position()"/>
        <xsl:value-of select="$level2Count" />
    </xsl:for-each>
</xsl:for-each>
22
ответ дан 1 December 2019 в 01:39
поделиться
<xsl:for-each select="abc">
    <xsl:variable name="i" select="position()"/>
    <xsl:for-each select="def">
        <xsl:value-of select="$i" />
    </xsl:for-each>
</xsl:for-each>
5
ответ дан 1 December 2019 в 01:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: