Russian Qt Forum

Qt => Qt Quick => Тема начата: BuRn от Октябрь 05, 2014, 00:49



Название: binding array
Отправлено: BuRn от Октябрь 05, 2014, 00:49
Вопрос вот в чем, заметил, что при изменении массива биндинг не срабатывает, приходится переписывать массив полностью, т.е. что - то типа var b = a; a = []; a = b; - биндинг ок, это как-то можно побороть без способа очистки массива?


Название: Re: binding array
Отправлено: vregess от Октябрь 05, 2014, 07:53
Все верно, изменение массива, да и вообще любого объекта, который не испускает changed-сигнал, не активирует биндинг.
Чтобы сработала привязка, не обязательно полностью очищать массив, должно сработать что-то вроде:

Код
Javascript
var arr = qmlObj.arrayVal;
arr[index] = someVal;
qmlObj.arrayVal = arr;