В приведенном ниже коде углового (v18) статический список из 3 alltasks отфильтровывается идентификатором пользователя, когда компонент рендерирует и отображается (для userid u3 ) 2 задачи через вычисленные задачи свойство.
Существует событие, которое вызывает oncompletetask () , которое успешно удаляет задачу из Alltasks . Длина Alltasks регистрируется как снижение с 3 до 2. Мы ожидаем, что свойство задачи () теперь вернет 1 вместо 2 фильтрованных задач.
Тем не менее, компонент не повторно рендеринг - функция вычисленных задач никогда не вызывается, хотя Alltasks обновляется - действительно с новой ссылкой.
Почему задачи не обновляются при изменении AllTasks ?import { Component, input, computed } from '@angular/core';
//import { NgIf } from '@angular/common';
import { TaskComponent } from './task/task.component';
import { Task } from './task.model';
@Component({
selector: 'app-task-list',
standalone: true,
templateUrl: './tasks.component.html',
imports: [TaskComponent],
styleUrls: ['./tasks.component.css'],
})
export class TaskListComponent {
userId = input();
userName = input();
allTasks: Task[] = [
{
id: 't1',
userId: 'u1',
title: 'Master Angular',
summary: 'Learn all the basic and advanced features of Angular & how to apply them.',
dueDate: '2025-12-31',
},
{
id: 't2',
userId: 'u3',
title: 'Build first prototype',
summary: 'Build a first prototype of the online shop website',
dueDate: '2024-05-31',
},
{
id: 't3',
userId: 'u3',
title: 'Prepare issue template',
summary: 'Prepare and describe an issue template which will help with project management',
dueDate: '2024-06-15',
},
];
tasks = computed(() => {
console.log('Computing tasks for user', this.userId());
return this.allTasks.filter((task) => task.userId === this.userId());
});
constructor() {}
onCompleteTask(id: string) {
let newTasks = this.allTasks.filter((task) => task.id !== id);
this.allTasks = newTasks;
console.log('Completed task', id, this.allTasks.length);
}
}
Подробнее здесь: https://stackoverflow.com/questions/794 ... ecomputing
Угловой сигнал не перечисляет ⇐ Javascript
Форум по Javascript
1740473380
Anonymous
В приведенном ниже коде углового (v18) статический список из 3 alltasks отфильтровывается идентификатором пользователя, когда компонент рендерирует и отображается (для userid u3 ) 2 задачи через вычисленные задачи свойство.
Существует событие, которое вызывает oncompletetask () , которое успешно удаляет задачу из Alltasks . Длина Alltasks регистрируется как снижение с 3 до 2. Мы ожидаем, что свойство задачи () теперь вернет 1 вместо 2 фильтрованных задач.
Тем не менее, компонент не повторно рендеринг - функция вычисленных задач никогда не вызывается, хотя Alltasks обновляется - действительно с новой ссылкой.
Почему задачи не обновляются при изменении AllTasks ?import { Component, input, computed } from '@angular/core';
//import { NgIf } from '@angular/common';
import { TaskComponent } from './task/task.component';
import { Task } from './task.model';
@Component({
selector: 'app-task-list',
standalone: true,
templateUrl: './tasks.component.html',
imports: [TaskComponent],
styleUrls: ['./tasks.component.css'],
})
export class TaskListComponent {
userId = input();
userName = input();
allTasks: Task[] = [
{
id: 't1',
userId: 'u1',
title: 'Master Angular',
summary: 'Learn all the basic and advanced features of Angular & how to apply them.',
dueDate: '2025-12-31',
},
{
id: 't2',
userId: 'u3',
title: 'Build first prototype',
summary: 'Build a first prototype of the online shop website',
dueDate: '2024-05-31',
},
{
id: 't3',
userId: 'u3',
title: 'Prepare issue template',
summary: 'Prepare and describe an issue template which will help with project management',
dueDate: '2024-06-15',
},
];
tasks = computed(() => {
console.log('Computing tasks for user', this.userId());
return this.allTasks.filter((task) => task.userId === this.userId());
});
constructor() {}
onCompleteTask(id: string) {
let newTasks = this.allTasks.filter((task) => task.id !== id);
this.allTasks = newTasks;
console.log('Completed task', id, this.allTasks.length);
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79465835/angular-signal-not-recomputing[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия