В приложении со списком продуктов у меня есть родительский компонент, циклически отображающий продуктовые элементы, и дочерний компонент, отображающий детали для каждого продуктового элемента с использованием элементов ввода (флажок и текстовое поле). Я установил двустороннюю привязку непосредственно к элементам GroceryItem, и она работает нормально, если обновлять элементы с помощью входных данных.
Проблема в том, что я уведомляю родительский компонент о повторной визуализации самого себя. , Я знаю, что должен вызывать EventCallBack при обнаружении изменения, но я хочу избежать дублирования членов моего класса в качестве локальных переменных, просто чтобы иметь возможность использовать установщик для обнаружения изменения и вызывать EventCallBack. Другой трюк, который я нашел, состоял в том, чтобы вручную связать данные, но опять же это создает дублирование, поскольку мне нужно настроить обработчик событий для каждого элемента ввода.
Есть ли лучший способ?
I wi sh был механизм, с помощью которого я мог бы добавить больше обработчиков событий onchange к элементам ввода, чтобы вызывать EventCallBack ... Но поскольку bind занимает единственный доступный слот, я не могу.
// This is the child component
<li>
<input type="checkbox" @bind=Item.Purchased />
<input type="text" @bind=Item.Name />
</li>
@code
{
[Parameter]
public GroceryItem Item { get; set; }
[Parameter]
public EventCallback<GroceryItem> ItemChanged { get; set; }
}