Ответ
Да, есть опыт работы с class component в Vue 2.
Для этого использовался декоратор @Component из библиотеки vue-class-component или vue-property-decorator.
Пример:
import { Vue, Component, Prop } from 'vue-property-decorator'
@Component
export default class MyComponent extends Vue {
@Prop({ default: '' }) readonly title!: string
count = 0
increment() {
this.count++
}
}
Плюсы:
- Более привычный синтаксис для разработчиков с опытом в ООП
- Четкая структура компонента (props, data, methods в одном месте)
Минусы:
- Дополнительная зависимость
- Меньше гибкости по сравнению с Options API
- Vue 3 Composition API предлагает лучшую альтернативу