BREAKING CHANGE: Reactivity APIs adjustments: - `readonly` is now non-tracking if called on plain objects. `lock` and `unlock` have been removed. A `readonly` proxy can no longer be directly mutated. However, it can still wrap an already reactive object and track changes to the source reactive object. - `isReactive` now only returns true for proxies created by `reactive`, or a `readonly` proxy that wraps a `reactive` proxy. - A new utility `isProxy` is introduced, which returns true for both reactive or readonly proxies. - `markNonReactive` has been renamed to `markRaw`.
@vue/runtime-test
import { h, render, nodeOps, dumpOps } from '@vue/runtime-test'
const App = {
data () {
return {
msg: 'Hello World!'
}
}
render () {
return h('div', this.msg)
}
}
// root is of type `TestElement` as defined in src/nodeOps.ts
const root = nodeOps.createElement('div')
render(h(App), root)
const ops = dumpOps()
console.log(ops)