В приложении NativeScript Core у меня есть динамически отображаемый список пользователей, и у каждого пользователя есть два элемента Switch; один для участия и один для назначения.
Во-первых, как я могу связать событие "checkedChange" со всеми элементами Switch в этом списке сразу после того, как список был загружен или перезагружен (а не с любыми другими элементами Switch на этой странице)?
Во-вторых, переключатель назначения должен быть включен только в том случае, если переключатель участия включен или отключен и не отмечен в другом случае. Как это может быть достигнуто хорошим способом?
В-третьих, событие вызывает функцию, которая должна сохранить изменения. Как мне получить информацию о типе (задействовать или назначить) и идентификатор пользователя?
Пример снимка экрана
Для уточнения:
Я знаю о способе присвоения переключателю элемента идентификатора и его статической привязки, например:
const mySwitch = page.getViewById("mySwitch");
mySwitch.on("checkedChange", (args) => {
// Do something
});
и
<Switch id="mySwitch" .../>
Но в этом случае я загружаю список пользователей из API, используя ViewModel и ObservableArray. Каждая запись содержит два элемента Switch, и присвоение им уникальных идентификаторов и связывание каждого из них кажется плохим решением.
Если бы это было веб-приложение, я бы добавил дополнительные атрибуты к элементу Switch, например:
<Switch data-type="user-involvement" data-uid="10" .../>
и все вместе связывают изменения со всеми элементами, в которых тип данных "участие пользователя".
Есть ли способ сделать нечто подобное в {N} Core?