You can pass a DOM element instead of a selector there. It's just like ReactDOM.render, only you can pass a selector too.
Plus you can pass a template property too so it won't use the element's content as a template.
Moreover, with Vue you can create .vue files that merge together the code, the template and the style of a single component. As a plus, you can use transpilers and compilers for all (Babel, Pug, Sass... you name it).
Finally you can even use JSX with Vue so you actually have maximum flexibility here.