Каков best practice для общего функционала во Vue?
В третей вьюхе будет композиция с помощью нового composition API. Говорят, что они схожи с реактовскими хуками.
Пока что можно юзать https://github.com/vuejs/composition-api - порт того же (или +- того же) АПИ на вторую версию. Важно понимать, что это НЕ полный порт, а лишь compat слой для легкого перехода на третюю версию.
В итоге сделал при помощи декораторов. Оказалось одним из самых удобных решений, особенно в контексте того. что я использую vue-class-property декоратор. От классического hoc'a выгодно отличается тем, что не создает под капотом новый компонент, а просто возвращает конструктор, который затем js сам применяет, где надо.
Выглядит при этом тоже очень красиво.@Filterable // мой декоратор
@Component({
   // options
})
export default class extends Vue {
   // component logic
}