Существуют ли различия в том, как Angular @For и NGFOR HARDENT DETACTION?Html

Программисты Html
Ответить Пред. темаСлед. тема
Anonymous
 Существуют ли различия в том, как Angular @For и NGFOR HARDENT DETACTION?

Сообщение Anonymous »

Я использовал NGFO в течение многих лет, но был заинтересован в переходе к более новой @FOR, поскольку он, кажется, делает код немного чище (на мой взгляд). Однако недавно я только что обнаружил интересное явление, что я не уверен, является ли это «функцией» цикла @FOR, что я просто не понимаю, как он предназначен для работы, или, возможно, я обнаружил ошибку. Сценарий NGFOR, кажется, отлично обнаруживает и релендер прекрасно, но сценарий @FOR, кажется, запутывается, есть ли изменения, и в некоторых сценариях будет правильно повторно, а другие сценарии не будут правильно редерно.// @for
testingWithAtForNames: { name: string }[] = [{ name: '' }]
onTestingWithAtForChanged() {
this.testingWithAtForNames = [
...this.testingWithAtForNames.filter(x => x.name.length), // remove entries with zero length
{ name: '' } // add empty entry to bottom
]
}

// ngFor
testingWithNgForNames: { name: string }[] = [{ name: '' }]
onTestingWithNgForChanged() {
this.testingWithNgForNames = [
...this.testingWithNgForNames.filter(x => x.name.length), // remove entries with zero length
{ name: '' } // add empty entry to bottom
]
}
< /code>
и вот файл .html < /p>


testing with &commat;for
@for (testingWithAtForName of testingWithAtForNames; track $index) {

}




testing with Ngfor


< /code>
Вот что ожидается: < /p>
  • Чтобы запустить, есть только одно пустое поле редактирования текста < /li>
    Как только пользователь введет что -то в поле «Пустое текст», новое пустое поле редактирования текста появится ниже. Появится < /li>
    Если в любое время пользователь удаляет весь текст из любого поля редактирования текста, то теперь, что в настоящее время пустое текстовое редактирование будет удалено из отображения, и все другие поля редактирования текста будут двигаться вверх < /li>
    < /ul>
    Вот что происходит в сценарии NGFOR (этот код, кажется, хорошо смену следования). /> Форма 1 пуста

    "" < /li>
    < /ul>
    < /li>
    Пользовательская буква «A» в форме 1, вызывая пустую форму 2, чтобы появиться

    «a» < /li>
    "< /br /> ul> ul>” < /br /> < /br /> ul> " /> < /li>
    Пользователь Типит буква «A» в форме 2, вызывая пустую форму 3, появляющуюся

    "a" < /li>
    "a" < /li>
    "< /li>
    < /ul>
    < /li>
    aempt a aemptive aemptive aemptive aempting to be removed and everything left to "move up"

    "a"
  • ""
[*]Notice how there is always one blank form box at the bottom and never any blank form boxes in the middle

Here's what happens in the @for Сценарий (этот код кажется нарушенным и, кажется, не обнаруживает изменений, а также ngfor) < /p>

Форма 1 пуст

"" < /li>
< /ul>
< /li>
типа пользователя "типа" A "в форму 1, вызывающая 1 -й форме 2,

/> "a" < /li>
"" < /li>
< /ul>
< /li>
Пользователь типа «A» в форме 2, вызывая пустую форму 3, чтобы появиться

«A» < /li>
»< />
" < /li>
"
" < /li>

/> < /ul>
< /li>
Пользователь удаляет букву «a» из формы 1, но вместо формы 1 удаляется и все остальное просто «перемещение», что теперь есть неправильно 2 пустые формы

»< /li>
» < /li>
< /br /> < /br /> < /br />

< /br />
< /br />

< /br />
Когда я печатаю содержимое переменной testingWithAtfornames < /code> на консоли, я вижу, что есть правильно 2 записи, и у первых есть «a», а второй пуст, но угловался не правильно, или он не обнаружил, что, по -видимому, это не так. формы Так как в приведенных выше примерах я только что использовал букву «A» во всех формах. Если я использовал текст «asdf» во всех формах, то аналогично сценарий @For все равно сломается. Однако, если я ввел что -то другое в каждую форму, то код работает, как и ожидалось. Так что, как если бы я написал «QWER» в первой форме, то «ASDF» во второй форме, то когда я иду, чтобы удалить текст «QWER», он правильно удалит «QWER» с дисплея и правильно показывает оставшиеся «ASDF» и «». угловой. Очевидно, что между @For и NGFOR есть что -то другое, но я не уверен, что это ошибка, о которой я должен сообщить, или было какое -то предполагаемое изменение в том, как @FOR меняет обнаружение, которое мне не хватает.>

Подробнее здесь: https://stackoverflow.com/questions/797 ... -detection
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Html»