Имам дървена мрежа и искам да актуализирам само един възел с неговите деца. Така че аз се опитах така:
store.load({
node: store.getNodeById(1)
});
Това актуализира децата, но не и самия възел. И така, как мога да актуализирам възел и детски? Най-добре би било да се изисква само една заявка към базата данни.
Отговори:
0 за отговор № 1Няма начин да го направите чрез конфигурацияпросто работи като дизайн. Това, което можете да направите, е малко трик, след като заредите децата на възела, за да манипулирате дървените възли, за да актуализирате самия възел ръчно.
Вижте изображенията. Те показват поведението, което очаквате.
Това работи добре в jsfiddle: http://jsfiddle.net/lontivero/jBTWn/3/
По същество идеята е, както казах, да манипулирам дървото след натоварването на децата. В моя пример това се прави от:
var node = store.getNodeById(1);
store.load({
node: node,
callback: function(newRecord) {
var parent = node.parentNode;
parent.insertBefore(newRecord[0], node);
parent.removeChild(node);
},
params: {
json: Ext.JSON.encode(updated_data)
}
});
Късмет!