You can see from the original issue config.value.value was causing the multiple initStore.
ts
watch(
config,
(newVal, oldVal) => {
if (isEqual(newVal, oldVal)) return console.log('cancel')
initStore()
},
{
immediate: true,
onTrigger(event) {
console.log(event.key)
}
}
)