aboutsummaryrefslogtreecommitdiff
path: root/src/fields/ListField.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/fields/ListField.ts')
-rw-r--r--src/fields/ListField.ts14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/fields/ListField.ts b/src/fields/ListField.ts
index a71325a65..6b8773920 100644
--- a/src/fields/ListField.ts
+++ b/src/fields/ListField.ts
@@ -49,6 +49,20 @@ export class ListField<T extends Field> extends BasicField<T[]> {
}
UpdateFromServer(fields: string[]) {
+ if (this._proxies.length < fields.length) {
+ var added = true;
+ for (let i = 0; i < this._proxies.length; i++) {
+ if (this._proxies[i] != fields[i]) {
+ added = false;
+ break;
+ }
+ }
+ if (added) {
+ for (let i = this._proxies.length; i < fields.length; i++)
+ this._proxies.push(fields[i]);
+ return;
+ }
+ }
this._proxies = fields;
}
private arraysEqual(a: any[], b: any[]) {