Skip to content

Commit ca7581a

Browse files
committed
data.RecordFactory: createRecord() => smarter matching to model instances #3196
1 parent afced7f commit ca7581a

2 files changed

Lines changed: 10 additions & 13 deletions

File tree

src/data/RecordFactory.mjs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,9 @@ class RecordFactory extends Base {
2828
*/
2929
ovPrefix: 'ov_',
3030
/**
31-
* @member {String} recordNamespace='Neo.data.record.'
31+
* @member {String} recordNamespace='Neo.data.record'
3232
*/
33-
recordNamespace: 'Neo.data.record.'
33+
recordNamespace: 'Neo.data.record'
3434
}}
3535

3636
/**
@@ -39,7 +39,7 @@ class RecordFactory extends Base {
3939
* @returns {Object}
4040
*/
4141
createRecord(model, config) {
42-
let recordClass = Neo.ns(this.recordNamespace + model.className);
42+
let recordClass = Neo.ns(`${this.recordNamespace}.${model.className}.${model.id}`);
4343

4444
if (!recordClass) {
4545
recordClass = this.createRecordClass(model);
@@ -54,7 +54,7 @@ class RecordFactory extends Base {
5454
*/
5555
createRecordClass(model) {
5656
if (model instanceof Model) {
57-
let className = this.recordNamespace + model.className,
57+
let className = `${this.recordNamespace}.${model.className}.${model.id}`,
5858
ns = Neo.ns(className),
5959
key, nsArray;
6060

@@ -97,9 +97,9 @@ class RecordFactory extends Base {
9797
let me = this,
9898
oldValue = me[symbol];
9999

100-
if (!Neo.isEqual(value, oldValue)) {
101-
value = instance.parseRecordValue(me, field, value);
100+
value = instance.parseRecordValue(me, field, value);
102101

102+
if (!Neo.isEqual(value, oldValue)) {
103103
me[symbol] = value;
104104

105105
me._isModified = true;

src/table/Container.mjs

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -247,9 +247,9 @@ class Container extends BaseContainer {
247247
}
248248

249249
if (value) {
250-
let me = this;
250+
let me = this,
251251

252-
const listeners = {
252+
listeners = {
253253
filter : me.onStoreFilter,
254254
load : me.onStoreLoad,
255255
recordChange: me.onStoreRecordChange,
@@ -258,13 +258,10 @@ class Container extends BaseContainer {
258258

259259
if (value instanceof Store) {
260260
value.on(listeners);
261-
262-
if (value.getCount() > 0) {
263-
me.onStoreLoad(value.items);
264-
}
261+
value.getCount() > 0 && me.onStoreLoad(value.items);
265262
} else {
266263
value = ClassSystemUtil.beforeSetInstance(value, Store, {
267-
listeners: listeners
264+
listeners
268265
});
269266
}
270267

0 commit comments

Comments
 (0)