Skip to content

Commit 6da9531

Browse files
authored
fix: type asign (#442)
1 parent 8a24d1a commit 6da9531

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

src/utils/set.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,8 @@ export function merge<T extends object>(...sources: T[]) {
8282
loopSet.add(value);
8383

8484
// Init container if not exist
85-
if (!get(clone, path)) {
85+
const originValue = get(clone, path);
86+
if (!originValue || typeof originValue !== 'object') {
8687
clone = set(clone, path, createEmpty(value));
8788
}
8889

tests/utils.test.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,14 @@ describe('utils', () => {
179179
},
180180
});
181181
});
182+
183+
it('different type', () => {
184+
const merged = merge({ selector: 'K1' }, { selector: ['K1', 'K2'] });
185+
186+
expect(merged).toEqual({
187+
selector: ['K1', 'K2'],
188+
});
189+
});
182190
});
183191
});
184192

0 commit comments

Comments
 (0)