Skip to content

Commit 810f467

Browse files
committed
fix: correct parse values
1 parent 71380b9 commit 810f467

File tree

1 file changed

+24
-22
lines changed

1 file changed

+24
-22
lines changed

packages/nvton/src/nvton.ts

Lines changed: 24 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -107,30 +107,32 @@ export class NVTON {
107107
const set = utils().keySet(item.key, runner);
108108

109109
const target = this.data.get(get.raw);
110-
let value = item.data;
111-
if (typeof value === 'string' && value === PARSER_UNDEFINED_VALUE)
112-
value = undefined;
113-
114-
if (
115-
this.options.merge.object &&
116-
target &&
117-
target.value &&
118-
value &&
119-
typeof target.value === 'object' &&
120-
typeof value === 'object'
121-
) {
122-
value = defu(value, target.value) as object;
110+
111+
if (this.options.warnings.wrongKey && target) {
112+
warning(
113+
`${get.raw} exists and is ignored. use merge: { object: true } in options for merge values in object.`
114+
);
123115
} else {
124-
if (this.options.warnings.wrongKey)
125-
warning(
126-
`${get.raw} exists and is ignored. use merge: { object: true } in options for merge values in object.`
127-
);
116+
let value = item.data;
117+
if (typeof value === 'string' && value === PARSER_UNDEFINED_VALUE)
118+
value = undefined;
119+
120+
if (
121+
this.options.merge.object &&
122+
target &&
123+
target.value &&
124+
value &&
125+
typeof target.value === 'object' &&
126+
typeof value === 'object'
127+
) {
128+
value = defu(value, target.value) as object;
129+
}
130+
131+
this.data.set(set, {
132+
type: item.type,
133+
value,
134+
});
128135
}
129-
130-
this.data.set(set, {
131-
type: item.type,
132-
value,
133-
});
134136
}
135137
this.size.all++;
136138
});

0 commit comments

Comments
 (0)