edison
edison
Also need to consider the usage of `v-bind="prop"`. see [Playground with this PR](https://deploy-preview-13894--vue-sfc-playground.netlify.app/#__SSR__eNp9U81uEzEQfpWRL9uIzSYl7WVJkWgVITgUBD0gYQ5md5K69dqWf5ZEUd6d8XobQlX1srLn+/E3Y++efbC26iOymi1946QN4DFE+55r2VnjAuzBoWiC7BEOsHamg4L4BddcN0b7ADJg5+HqSDv7eV7C2xIWJVyUcPlrwrXCABq34TZ2RBwElUK9CffwBs6T1TpqEhsNRl/j2jhc6YDubAL7hB7S5+k864xN5xEC0Jkeb5Twvi7SsihTUYsO62It2hTzP20QG1IWURGwnOWGqVXaUCarREDaASxb2UOTbK84a7EznA11Qu6c0F6mqB+diTY5EicqzqCf/pa6pd2Q8CghkZIEUleEpeZB6jwEEtWPuBvLJwqA/X6gwIHyjy4zJZ9SzJ7FyKlnFJtWy9lJM7T1YafSslLShymmwU7zVdG0clGh6HEs5sGG4wE1CKVgXl16QOHx3TjSU7f0LJ55BZN9jBWNDLsa5iQcbWkSXZ2XKeWPs8XcbifZmG5ljMtKFjxd21puqgdvND3RwZGzxnRWKnRfbMpHU6zzWQmjrObP56EWXEwd5npzj83jC/UHv001zr469Oh65OyIBeE2GDK8+n5LD/gE7EwbFbFfAb+hNyqmjJl2HXVLsU94Q9pPw48m9ebOr7YBaexjUyloYh4GPmf039280vq/uIvqYtDRRNnhL2SnTr8=)
Closing as it had been fixed via https://github.com/vuejs/core/pull/9421
I can't reproduce it with the reproduction. Could it be caused by a browser extension?
It is recommended to change `val` to `computed` or directly assign a value to `this.val`, rather than relying on chained triggering between watches.
The following example has a bug [Playground with this PR](https://deploy-preview-13963--vue-sfc-playground.netlify.app/#__SSR__eNp9Uk1PAjEQ/SuTXlYThIOeCJKo8aAHIXycrIdlmYXFbtu0UyQh/Hen3fBhBG7Tea/vzZt2K56sba8Diq7o+cJVlsAjBQsq14tHKchL0Ze6qq1xBFtwWMIOSmdqyPhaJnVhtCfYwGPEbj6z0pislc1yl33dSi11pwPj8QgG08lwOgG/NEHNYYaQkJ5HhQVBHRRVVmG/ZyxVRvMQsY/zPsv1Ok3zP8guR7DTtHlaFnY5LdEBLfNmhEtG5/QvyXKZNsQlHwhrq3JCPsFBfn1XmzkqXtxGiqNZpDDpjOVf5NQ4yZ6anxiKFj8ML76sFu2VN5pfbxv5UhSmtpVCN0gi/HhdSEjEcqXMz3vqkQvY2veLJRbfZ/qeXFXQR1DqJTISocyVPzJWnmN2uRg69OjWKMUBo9wtkBr4dfyBG64PIG8pKGZfAUfojQoxRUN7DnrOwU54Kc9b+pmVXkz864ZQ+33sGCUyd4kvBf/WlyvLOY57335I96Teid0v8u0PmQ==)
Is [this](https://github.com/vitest-dev/vitest/discussions/3183#discussioncomment-10652187) trick not working? Could you please provide a minimal runnable reproduction?
LGTM. Note: Documentation at https://vuejs.org/api/reactivity-core.html#watch needs to be updated when this feature is landed.
should be ```ts const FunctionalComponent = () => h(Comp, { modelValue: foo.value, ['onUpdate:modelValue']: (val) => foo.value = val, }); ```
For generic components, you need to specify the type; there is no way to infer it automatically.
a workaround - [playground](https://play.vuejs.org/#eNp9U01v2zAM/SuEMMAOmtnDtlPmBFuDHLLDNmw7Clgzm0nU2pKhDy9F4P8+SoodFy2qgy2R75GPpHRmX9o26xyyBStMqUVrwaB17YpL0bRKWziDxv0cKtwLiWtnrGo2NTYo7RyO0MNeqwYSCpFwWU7dJoucNGke35bKSYs6eTFQeuYSQO4aXECyHpDeFrSkf+akAk+tMgj9DAIaoFTSWPoGOCy9zPT9u9knLqM/EmJsvw44olMKQnjrtBxMWberHYUPaf3Kc0o+EjrPeApdQjeBC1nqWMwoMIqcUG5uBsfA62fxf9FC3OUKjmlSiY5adffm/ITf3wV4z2U/o93eydIKJZ/nrlTp/Dmjmi89vn3cVilnl3iczbIJi3pGQYs83gCaPR0sNm29s0gngIIEgaiWnFk0lrNgJPN1stE7hl8V+dU3oP86a0nu57IW5QOhRwWE3w77Io+wmDenxLQr8okcNmfW0PT34pDdGyXp7oaqffqmFTXq763vi+FsMcyCs11dq39fg81qh5cBEOeI5cML9ntz8jbOfmg0qDvkbPTZnabORvfm1zc80X50NqpyNaFfcf5Eo2rnNUbYrZMVyZ7ggtpteIFCHn6bzcmiNENRXmi4CQHPGb2+9SulX+V+yD4ON4j1/wEMOVN9)