Thing details: Fix config action saves the whole Thing (#2775)
A Thing config action is only supposed to save the config of the Thing, not the whole Thing. Fixes https://github.com/openhab/openhab-core/issues/4380. Signed-off-by: Florian Hotze <florianh_dev@icloud.com>pull/2780/head
parent
bdb54a54c7
commit
d78e6d9470
|
@ -547,8 +547,6 @@ export default {
|
|||
})
|
||||
},
|
||||
doConfigAction (action) {
|
||||
let thing = this.thing
|
||||
let save = this.save
|
||||
if (action.type !== 'BOOLEAN') {
|
||||
console.warn('Invalid action type', action)
|
||||
return
|
||||
|
@ -564,8 +562,15 @@ export default {
|
|||
prompt,
|
||||
this.thing.label,
|
||||
() => {
|
||||
thing.configuration[action.name] = true
|
||||
save()
|
||||
const name = action.name
|
||||
// Make sure Vue reactivity notices the change
|
||||
this.$set(this.thing, 'configuration', ({
|
||||
name: true,
|
||||
...this.thing.configuration
|
||||
}))
|
||||
// Vue reactivity is too slow to recognize config change before the API call, manually mark the config dirty
|
||||
this.configDirty = true
|
||||
this.save()
|
||||
}
|
||||
)
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue