The base object providing default values.
The object(s) with values that will override defaults.
const defaultConfig = {
settings: {
theme: 'light',
layout: {
width: '100%',
height: '100%',
},
},
user: {
name: 'Guest',
preferences: {
notifications: true,
},
},
};
const customConfig = {
settings: {
theme: 'dark', // Override default theme
layout: {
height: '90%', // Override default height
},
},
user: {
preferences: {
notifications: false, // Override default notifications
},
},
};
const mergedConfig = useMergedProps(defaultConfig, customConfig);
// mergedConfig will be:
// {
// settings: {
// theme: 'dark', // customConfig override
// layout: {
// width: '100%', // defaultConfig
// height: '90%', // customConfig override
// },
// },
// user: {
// name: 'Guest', // defaultConfig
// preferences: {
// notifications: false, // customConfig override
// },
// },
// }
A custom hook to deeply merge two or more objects into one.