Shaun Carter
Sep 9, 2018 · 1 min read

Except for the fact currently you can have only one template block in a Vue file. Meaning the render function in Vue which is essentially the template block, becomes this single massive function that’s difficult to parse. You could say, hey that’s just HTML. But it’s so much easier to create dumb render components in React. In vue vue.component allowed you to do this, but the syntax is so clunky, compared to simply returning JSX in any regular old function.

Did I mentioned that component then has to be added to the components property. This difficulty in modularizing the render functions leads, to large code and prevents reuse. In React everything is a component so composition of multiple components comes now naturally and the true structure of a page is understood, by the tooling. In Vue the tooling, won’t conform to the actually layout of visual relents, unless the developer is creating a new file, for each subcomponent, or using lots of Vue.component syntax, which I have my doubts anyone uses consistently.

Shaun Carter

Written by