0👍
I think it’s not natural to change properties from target component. In Vue.js the model is "Data down – Actions up". This means that you pass some data from parent component to child component and if the child component have to change something, it should emit an event and its parent component should listen for it and react to it. If you need flexibility and your data changes dynamically, you can pass objects via the props and also emit event with objects as payload. I think this is how you should approach the new implementation of your application from vanilla JS.
Source:stackexchange.com