У меня проблема в flex, которая вызывает немного головной боли!Два объекта, созданных с тем же адресом в Flex
Я добавляю объекты в ArrayCollection, но при этом другой ArrayCollection также подбирает эти изменения, даже если нет привязки.
Из отладки видно, что два AC имеют один и тот же адрес, но для меня жизнь не может понять, почему.
У меня есть два массива Коллекции:
model.index.rows //The main array collection
model.index.holdRows //The array collection that imitates the above
Этот фантом связывания данных происходит только для первой итерации в цикле и для всех остальных это будет просто записать его на один раз.
Причина, по которой это вызывает беспокойство, заключается в том, что она создает повторяющиеся записи в моем datagrid.
public override function handleMessage(message:IMessage):void
{
super.handleMessage(message);
if (message is IndexResponse)
{
var response:IndexResponse = message as IndexResponse;
model.index.rows.removeAll();
model.index.indexIsEmpty = response.nullIndex;
if (model.index.indexIsEmpty !== true)
{
//Update the index model from the response. Note: each property of the row object will be shown in the UI as a column in the grid
response.index.forEach(function(entry:EntryData, i:int, a:Array):void
{
var row:Object = { fileID: entry.fileID, dadName: entry.dadName };
entry.tags.forEach(function(tag:Tag, i:int, a:Array):void
{
row[tag.name] = tag.value;
});
model.index.rows.addItem(row);
});
if(model.index.indexForNetworkView == true){
model.index.holdRows.source = model.index.holdRows.source.concat(model.index.rows.source);
model.index.indexCounter++;
model.index.indexForNetworkView = false;
controller.indexController.showNetwork(model.index.indexCounter);
}
model.index.rows.refresh();
controller.networkController.show();
}
}
Есть ли кто-нибудь, кто столкнулся с чем-то похожим на предложение?
Огромная помощь Большое спасибо! – James
Не проблема, была такая же проблема, что и пару месяцев назад, и, как вы можете видеть, также была решена прямо здесь :) – Ladislav