Up to this point, composing functionality in Vue has been a bit of a struggle. A few advanced patterns for logic composition have emerged, like using Scoped Slots and Renderless Components, but it never felt "right". Not any more! Vue has introduced some new APIs*, similar to React Hooks, which give us even more power in our Vue components and allow us to more easily share logic across components. *new APIs currently in RFC, but are fairly stable.