https://www.youtube.com/watch?v=y-hN5Q_lb9A
Ладно, кто ещё не видел посмотрите как Эван рассказывает о плюшках во Vue 3.3
Ладно, кто ещё не видел посмотрите как Эван рассказывает о плюшках во Vue 3.3
YouTube
Evan You's State of the Vuenion 📣 VueConf US 2023
The creator of Vue.js updates the community on the roadmap for the Vue.js framework for 2023 at VueConf US in New Orleans.
Ready to master Vue.js? With weekly Vue js tutorials on the latest topics, and exclusive content with Evan You (the creator of Vue)…
Ready to master Vue.js? With weekly Vue js tutorials on the latest topics, and exclusive content with Evan You (the creator of Vue)…
И казалось бы, ну ввели новый удобный синтаксис для интерфейсов defineEmits в 3.3
Было так:
Issue тут: https://github.com/vuejs/core/issues/8457
Было так:
export interface IBaseEmits {А стало так:
(e: 'change', id: number): void
(e: 'update', value: string): void
}
export interface IBaseEmits {Но стоит этот интерфейс попытаться заюзать в defineEmits предварительно импортировав, получим ошибку
change: [id: number]
update: [value: string]
}
Issue тут: https://github.com/vuejs/core/issues/8457
Душный Вуй
И казалось бы, ну ввели новый удобный синтаксис для интерфейсов defineEmits в 3.3 Было так: export interface IBaseEmits { (e: 'change', id: number): void (e: 'update', value: string): void } А стало так: export interface IBaseEmits { change: [id:…
И блять, вместо стандартного расширения интерфейса мне придется писать херню
defineEmits<IBaseEmits & {
keydown: [value: Event]
}>()
Выглядит как полная херота
Душный Вуй
И казалось бы, ну ввели новый удобный синтаксис для интерфейсов defineEmits в 3.3 Было так: export interface IBaseEmits { (e: 'change', id: number): void (e: 'update', value: string): void } А стало так: export interface IBaseEmits { change: [id:…
Причём с пропсами это работает на изи, удобно чётко красиво:
import type {IBaseInputProps} from "~/types";
/**
* Autocomplete input props extended interface
*/
interface IAutocompleteProps extends IBaseInputProps {
debounce?: number;
options?: string[];
search?: Function;
minLength?: number;
maxSuggestions?: number;
aiSwitcher?: boolean;
}
/**
* Autocomplete input props object
*/
const props = withDefaults(defineProps<IAutocompleteProps>(), {
debounce: 100,
required: false,
search: undefined,
disabled: false,
minLength: 0,
maxSuggestions: 10,
aiSwitcher: false,
options: () => [],
});
Вот тут расписано поподробнее про эту тему
https://habr.com/ru/articles/735086/
https://habr.com/ru/articles/735086/
Хабр
Представляем вам Vue 3.3
Эта статья — перевод оригинальной статьи " Announcing Vue 3.3 ". Также я веду телеграм канал “ Frontend по-флотски ”, где рассказываю про интересные вещи из мира разработки интерфейсов. Вступление...
Короче хз надо кому нет, но заметил что часто спрашивают, как в Nuxt 3 сделать nuxtServerInit из второго накста, ну так всё просто:
1. Создаём в папочке plugins файл init.server.ts (тут .server скажет наксту что этот плагин нужно юзать только на сервере)
2. И там собственно пишем
1. Создаём в папочке plugins файл init.server.ts (тут .server скажет наксту что этот плагин нужно юзать только на сервере)
2. И там собственно пишем
export default defineNuxtPlugin((ctx) => {
// и тут как обычно код вашего nuxtServerIniti
})
Нужен стор, например Pinia? Нет ничего прощеexport default defineNuxtPlugin(({$pinia}) => {
const {someAction, someStateVariable} = useMyStore($pinia)
})
Карочи ребятки, я тут переписал и обновил свой плагин для Vue 3, и сделал отдельный для Vue 2. Конечно Issues, PR и вообще всё такое приветствуется (ну ставьте звёздочки пажалста ну чё вы как эти), мы же OpenSource как никак ❤️
Vue 3: https://github.com/vaban-ru/vue-bottom-sheet
Vue 2: https://github.com/vaban-ru/vue-bottom-sheet-vue2
Vue 3: https://github.com/vaban-ru/vue-bottom-sheet
Vue 2: https://github.com/vaban-ru/vue-bottom-sheet-vue2
GitHub
GitHub - vaban-ru/vue-bottom-sheet: 🔥 A nice clean and touch-friendly bottom sheet component based on Vue.js and Hammer.js for…
🔥 A nice clean and touch-friendly bottom sheet component based on Vue.js and Hammer.js for Vue 3 - vaban-ru/vue-bottom-sheet
Так, ребятки, вопрос.
У меня в компонент есть 2 метода, я указываю, что они публичные через
Вопрос: как дать понять Вую и ТСу, что у этой рефки есть такие методы?
У меня в компонент есть 2 метода, я указываю, что они публичные через
defineExpose({ open, close })
Затем, что бы вызвать методы этого компонента я беру его рефку и вызываю их, типа:<template>
<my-component ref="myComponent" />
</template>
<script setup lang="ts">
const myComponent = ref(null)
myComponent.value?.open()
</script>
И вот тут мне TS подсвечивает что таких методов у рефки конечно нет. Вопрос: как дать понять Вую и ТСу, что у этой рефки есть такие методы?
То есть, мне нужно в дженерик рефки закинуть <что-то>, что бы вуй понял что там есть методы, но что?
✨ Nuxt 3.7.1
🚀 Улучшения производительности
- слегка уменьшился размер бандла
- предотвращен повторный рендеринг секции head в DOM
🩹 Исправления ошибок
📖 Обновление документации
https://github.com/nuxt/nuxt/releases/tag/v3.7.1
🚀 Улучшения производительности
- слегка уменьшился размер бандла
- предотвращен повторный рендеринг секции head в DOM
🩹 Исправления ошибок
📖 Обновление документации
https://github.com/nuxt/nuxt/releases/tag/v3.7.1
GitHub
Release v3.7.1 · nuxt/nuxt
3.7.1 is a regularly scheduled patch release.
✅ Upgrading
As usual, our recommendation for upgrading is to run:
nuxi upgrade --force
This will refresh your lockfile as well, and ensures that you p...
✅ Upgrading
As usual, our recommendation for upgrading is to run:
nuxi upgrade --force
This will refresh your lockfile as well, and ensures that you p...
Подвезли обновку на Nuxt кстати, за новость пасиба @ibochkarev
https://github.com/nuxt/nuxt/releases/tag/v3.7.2
https://github.com/nuxt/nuxt/releases/tag/v3.7.2
GitHub
Release v3.7.2 · nuxt/nuxt
3.7.2 is a regularly scheduled patch release.
✅ Upgrading
As usual, our recommendation for upgrading is to run:
nuxi upgrade
👉 Changelog
compare changes
🩹 Fixes
nuxt: Scroll to top by default on ...
✅ Upgrading
As usual, our recommendation for upgrading is to run:
nuxi upgrade
👉 Changelog
compare changes
🩹 Fixes
nuxt: Scroll to top by default on ...
Ребята с премиумом, обновите тележку и бустанике на халяву наш канал пажалста 🙏🎉
https://t.me/stuffy_vuejs?boost
https://t.me/stuffy_vuejs?boost
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
Душный Вуй
Проголосуйте за канал, чтобы он смог публиковать истории.
vue-faq.org — FAQ о фронтенде в целом и Vue в частности (этот проект крайне специфичный и транслирует мнения конкретно одного человека)
И я кстати хз почему комментарии под этим постом не работают, а под другими работают, Дуров ты чиво наделал?
https://habr.com/ru/articles/760636/
И я кстати хз почему комментарии под этим постом не работают, а под другими работают, Дуров ты чиво наделал?
https://habr.com/ru/articles/760636/
Хабр
Vue-faq.org — FAQ о фронтенде в целом и Vue в частности
https://vue-faq.org - попытка охватить наиболее часто задаваемые в профильных чатах и конференциях вопросы о фронтенде в целом и Vue.js фреймворке в частности. FAQ постоянно обновляется, текущий...