DashCodeとdataSourcesについて質問があります。JavaScriptファイルでJSONオブジェクトを定義し、それをdataSourceにリンクし、会社名をユーザーインターフェイス(「list」要素)に接続しました。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);
}
}
このコードは、実際にdataSourceに追加の項目を追加(削除)します。ただし、list.filterpredicateを使用してリストで新しいアイテムを検索すると、新しいアイテムは無視されます。
プログラムで既存のdataSourceにアイテムを追加(または削除)するための「正しい」アプローチとは何ですか?
あなたの助けに感謝しています!