У меня есть вопрос, касающийся DashCode и dataSources: я определил объект JSON в файле javascript, связал его с источником данных и связал названия компаний с пользовательским интерфейсом (элемент списка). Объект JSON выглядит следующим образом:
{
items: [
{ company:'A', product:'a1', color:'red' },
{ company:'B', product:'b2', color:'blue' },
{ company:'C', product:'c3', color:'white' }
]
}
Как программно добавить (или удалить) дополнительный «элемент» к существующему источнику данных? Я использовал следующий подход:
function addElement() {
var newElement = [{company:'D', product:'d4', color:'yellow' }];
var ds = dashcode.getDataSource('list');
ds.arrangedObjects.addObject(newElement);
}
и
function delElement()
{
var ds = dashcode.getDataSource('list');
if (ds.hasSelection()) {
var index = ds.selectionIndex();
ds.arrangedObjects.removeObjectAtIndex(index);
}
}
Этот фрагмент кода действительно добавляет (удаляет) дополнительный элемент в источник данных. Однако, когда я использую list.filterpredicate для поиска в списке нового элемента, новый элемент игнорируется.
Каков «правильный» подход для добавления (или удаления) элемента в существующий источник данных программным способом?
Ваша помощь ценится!