TGStat
TGStat
Type to search
Advanced channel search
  • flag English
    Site language
    flag Russian flag English flag Uzbek
  • Sign In
  • Catalog
    Channels and groups catalog Regional compilations Thematic compilations Платные каналы Search for channels
    Add a channel/group
  • Ratings
    Rating of channels Rating of groups Posts rating
    Ratings of brands and people
  • Analytics
  • Search by posts
  • Telegram monitoring
  • Promotion
    Advertising through Yandex Business Advertising in channels through TGStat Agency Advertising on TGStat.ru website
Vueist

7 Mar, 10:04

Open in Telegram Share Report

Порция RFC

Видимо под влиянием анонса Solid 2 один из членов кор тимы vue (ubugeeei) решил накидать своего вижена какие фичи неплохо было бы видеть во vue дальше

1. RFC: Composed Async
текущий Suspense завис в эксперементале на долгие годы. И по факту он прижился только в кишках Nuxt остальным же он оказался мало полезен (у Vue сейчас есть поддержка асинхронного setup (который отрабатывает лишь 1 раз) но нет асинхронного рендера). Этот rfc значительно расширяет возможности для асинхронности во Vue. Добавляя явный async аттрибут компонентам, своеобразный async для директив v-defer и дополнительная фича для Suspense.

Мне лично не совсем нравится вот эта гонка за асинхронностью во фреймворках, она создает достаточно много ментальной сложности Но реального применения у этого меньше бы чем хотелось. Был бы больше рад условному resource паттерну из коробки.

2. Паттерн-матчинг в шаблонах (само описание)
Предлагает вместо использования цепочек v-if/v-else-if сделать РАЗНОУРОВНЕВЫЙ v-match + v-case







Мы видим, что v-match на уровень выше чем v-case что должно способствовать читабельности. Ключевые слова и конечный синтаксис под вопросом.

Тут мне не сильно важно. как фича интересно, но и без нее ОК

3. Вложенные компоненты (описание)
Воистину самое спорное и холиварное из решений, Позволить внутри SFC создавать новые компоненты.




import { ref } from 'vue'

const count = ref(0)



increment





const { count } = defineProps()


Current count: ` count `



Ключевой момент, что это полноценный изолированный компонент(не как snippet из Svelte или createReusableComponent), но приватный для текущего (возможность явно указать export под вопросом). С одной стороны фича интересная, с другой будет способствовать файлам переросткам. Нужно будет большая дисциплина чтобы следить за таким.

4. Server-Side Props
А вот это апи крайн сомнительно. Не думаю что оно должно дойти до нас
Если кратко: defineServerSideProps позволяет указать зависимости от сервера асинхронной функцией (крайне схоже с asyncData из nuxt) и возможность указать server компоненты которые не должны никак попасть на клиент. Это вообще не про server component из React. а скорее попытка сделать стандартизированный подход и вырезание чувствительных данных и гарантия непопадания их на клиент

5. Props Variance
А вот это то чего так многие ждали: возможность отключать рантайм проверку пропсов. Опция nonValidatedProps позволит это включать. Те если раньше компилятор генерировал из TS типа рантайм пропсы для валидации, то такая фича позволяет типу остаться просто типом. Но тогда возникает вопрос как поступать с аттрибутами. И вот тут уже главные обсуждения данного rfc

Это достаточно краткий обзор на каждую из RFC и в действительности они заслуживают более глубокого анализа. Также напомню. что RFC вовсе не гарантирует попадание его в реаольность и скорее повод обсудить перед действиями. Поэтому если у вас есть стойкое мнение о них. то вы можете отписаться в RFC и сделать свой вклад в развитие Vue.

PS. Более подробно об изменениях Solid 2 и RFC во Vue буду обсуждать сегодня twitch / youtube буквально через час

1.4k 0 3 21 32
Catalog
Channels and groups catalog Channels compilations Search for channels Add a channel/group
Ratings
Rating of Telegram channels Rating of Telegram groups Posts rating Ratings of brands and people
API
API statistics Search API of posts API Callback
Our channels
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Read
Академия TGStat Telegram Research 2019 Telegram Research 2021 Telegram Research 2023
Contacts
Справочный центр Support Email Jobs
Miscellaneous
Terms and conditions Privacy policy Public offer
Our bots
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot