Open
Description
Version
2.5.17-beta.0
Reproduction link
https://jsfiddle.net/ts0307/pd8zr3sk/
Steps to reproduce
Run JSFiddle snippet
What is expected?
I expect, the result is shown as {"bar": "b"} instead of {"bar": "a"}
What is actually happening?
if ((!getter || setter) && arguments.length === 2) {
val = obj[key]
}
let childOb = !shallow && observe(val)
My example is that the data object defines that the getter does not define a setter, causing the above judgment to fail, val is not evaluated, and no recursive reactive is made.