https://github.com/vuejs/composition-api
I've been using the above for the last month and it's a far superior way of building components IMO. I've been able to reduce the amount of unneeded observer watchers and tracked properties by about 50%.
The distinction between simple raw JS objects and functions and what are Vue-tracked/computed properties makes the whole thing feel cleaner.
Typescript integration is also much better and doesn't feel like a hack like the Class component approach did.
Plus the eventual tree-shaking benefits of importing only the parts you need is great.