Переезд с Nuxt 2 на Nuxt 3: почему для крупного интернет-магазина мы выбрали рерайт, а не миграцию

Пять лет назад мы запустили интернет-магазин на Nuxt 2. За это время он превратился в классический монолит: вносить правки стало дорого, а сайт начал «задыхаться» под нагрузкой. Когда вышел Nuxt 3, перед нами встал выбор: пытаться оживить проект через Nuxt Bridge или переписать всё с нуля. Мы проанализировали код и поняли: плавная миграция для нас — это путь к созданию «зомби-проекта». Слишком много фундаментальных отличий: Options API против Composition API, Vuex против Pinia, смена логики роутинга и несовместимость ключевых библиотек. В этой статье я рассказываю, как мы решились на полный рерайт крупного магазина стройматериалов и почему это было единственно верным стратегическим решением. Внутри кейса: — 4 технических «фаталити» , которые делают миграцию легаси-монолита невозможной. — Архитектура FSD + Nuxt 3: как мы подружили фронтенд с бэкендом на Symfony и навели порядок в зависимостях. — Паттерн «Фабрика»: как упростить сложную логику доставки в Composition API. — Бонус: почему благодаря правильному старту недавнее обновление с Nuxt 3 до Nuxt 4 заняло у нас минимум времени, в отличие от мучений с Nuxt 2. Если вы всё еще поддерживаете проекты на второй версии и боитесь подступиться к обновлению — этот опыт для вас.

https://habr.com/ru/articles/968118/

#nuxtjs #pinia #feature_sliced_design #vite #composition_api #интернетмагазин #typescript

Переезд с Nuxt 2 на Nuxt 3: почему для крупного интернет-магазина мы выбрали рерайт, а не миграцию

Всем привет! Недавно мы с командой моей студии разработки panfilov.digital запустили новую версию интернет-магазина «Аквилон» ( akvilon.kz ) – одного из крупных игроков на рынке торговли...

Хабр

Композиционные хуки во Vue 3: коротко

Привет, Хабр! В этой статье рассмотрим, что такое композиционные хуки во Vue 3, зачем они нужны и как их использовать.

https://habr.com/ru/companies/otus/articles/922582/

#vuejs #Vue_3 #Composition_API #композиционные_хуки #хуки_Vue #useFetch #useMouse

Композиционные хуки во Vue 3: коротко

Привет, Хабр! Сегодня рассмотрим, что такое композиционные хуки во Vue 3, зачем они нужны и как их использовать. Что вообще за хуки во Vue 3? Хук (composable) во Vue 3 — это обычная функция, которая...

Хабр

Vue 3: Почему ref() — это новая ссылка, а reactive() — обёртка?

Если вы работаете с Vue 3, вы точно сталкивались с ref() и reactive() . Обе функции из Composition API делают значения реактивными — но делают это по-разному. И хотя документация Vue чётко указывает, что использовать в каком случае, она редко объясняет, почему это важно и что может пойти не так , если использовать не тот инструмент. Вот ссылки на официальную документацию — на всякий случай:

https://habr.com/ru/articles/920186/

#vue_3 #composition_api

Vue 3: Почему ref() — это новая ссылка, а reactive() — обёртка?

🧩 Введение Если вы работаете с Vue 3, вы точно сталкивались с ref() и reactive() . Обе функции из Composition API делают значения реактивными — но делают это по-разному. И хотя документация Vue чётко...

Хабр

Vue 3 под капотом и тонкости Composition API: Reactivity, Provide/Inject, Suspense

Vue 3 уже давно в строю, но его "прокси-движок" и особенности Composition API по-прежнему раскрывают себя всё глубже. В статье мы разберём, как Track/Trigger помогают отслеживать изменения, зачем нужны customRef и как грамотно использовать <Suspense> для асинхронных компонентов. Всё это - на примерах и с советами по оптимизации в крупных проектах. Приступаем к деталям!

https://habr.com/ru/articles/870986/

#vue #vue_3 #javascript #composition_api #реактивность #proxy #customRef #suspense #вебразработка #provideinject

Vue 3 под капотом и тонкости Composition API: Reactivity, Provide/Inject, Suspense

Изображение, созданное DALL-E Vue 3 не только добавил новый синтаксис (Composition API), но и серьёзно обновил движок реактивности. Теперь под капотом используются прокси-объекты (ES6 Proxy), а при...

Хабр

Полезные чипсы с Vue 3 Composition API: Создание адаптивного компонента с фильтрацией и множественным выбором

Современные пользовательские интерфейсы требуют высокой интерактивности и удобства взаимодействия. В этой статье поговорим о том, как реализовать мощный, адаптивный компонент мульти-выбора на основе Vue 3 Composition API. ChipsMultiSelect — это компонент, который объединяет возможности выпадающего списка, визуализации выбора в виде "чипсов" и встроенной фильтрации. Выбранные элементы отображаются в виде “чипсов”

https://habr.com/ru/articles/863210/

#contenteditable #vue3 #composition_api #javascript #css #vue_component

Полезные чипсы с Vue 3 Composition API: Создание адаптивного компонента с фильтрацией и множественным выбором

Современные пользовательские интерфейсы требуют высокой интерактивности и удобства взаимодействия. В этой статье поговорим о том, как реализовать мощный, адаптивный компонент мульти-выбора на основе...

Хабр
【Vue】Piniaを使った状態管理 - Qiita

はじめにVueで状態管理する時ってリアクティブなデータを使う以外に何があるんだ?と思ったので調べてみました。Vue3(CompositionAPI)ではPiniaという状態管理ライブラリとの相性…

Qiita
【Vue】ウォッチャー(watch)を使ったバリデーションとボタンの非活性 - Qiita

はじめにVueチュートリアルで学んだwatchを実際の開発でさわる機会があり、理解を深めるために機能を自分で作ってみました。ウォッチャー(watch)とは?特定のデータを監視し、変更が発生する…

Qiita
【Vue.js】Vueにおけるリアクティブとは? - Qiita

はじめにVue.jsチュートリアルで学んだことをアウトプットしていきます。前提宣言的レンダリングVue.jsのテンプレート構文のことです。JavaScriptのデータに基づいて表示が変更さ…

Qiita
【Vue.js】OptionAPIとCompositionAPIの違い - Qiita

はじめにVue.jsチュートリアルで学んだことをアウトプットしていきます。概要Vueコンポーネントの作成方法として、OptionsAPIとCompositionAPIの2種類のAPIスタイルが…

Qiita
【Vue.js】単一ファイルコンポーネント(SFC) - Qiita

はじめにVue.jsのチュートリアルで学んだことをアウトプットしていきます。概要単一ファイルコンポーネント(SFC)とはVueコンポーネントのテンプレート、ロジック、スタイルを1つのファイルにカプセル…

Qiita