SL
В принципе можно использовать ваш подход и примесить (миксином) к компоненту через переменную $listeners в тройке (не уверен, скорее всего, вю3 не позволит создать свойство с префиксом $), то в двойке можно спокойно писать как обычно
Осталось ещё придумать как разобрать attrs на обработчики и пропсы
Если что, это просто спортивный интерес, я бы не тащил такой подход в проект


