Comments 12
const h1 = reactive("Картинная галерея");
Я только начал разбираться с Vue 3, но вроде так не делают, а используют ref для примитивов.
Для управлением состояния внутри Vue.js рекомендуется использовать хранилище Vuex.
Уже pinia
Надо попробовать такую схему API.
C CORS проблем нет (dev сервер Vue будет же на другом порту чем CMS)?
Тоже интересно про CORS
Я только начал разбираться с Vue 3, но вроде так не делают, а используют ref для примитивов.
Не делают. И даже ref-ссылки нет никакой нужды тут использовать, это "реактовщина" какая-то)) Во Vue же специальный html-образный синтаксис шаблонов как раз для этого - хоть хардкодь какой-то контент, хоть реактивные данные подключай. А не писать половину представления в шаблоне, а другую половину через константы развешивать...
с CORS проблем ни локально ни на проде (с учетом разных доменов и корректной настройке веб сервера) нет
Почему Vuex, а не рекомендуемая в текущей версии Pinia?
А какие альтернативы еще есть из серверных CMS на nodejs?
Ещё одна статья за короткое время, где стор отвечает за общение с сервером, а ответ хранится в сторе.
Стор нужен, чтобы шарить реактивные данные между компонентами. У вас же данные использует один компонент и даже их не кеширует, а каждый новый маунт запрашивает данные заново.
const h1 = reactive("Картинная галерея");
- это вообще не рабочий код, с точки зрения реактивности. Проверить это можно при помощиisReactive
. Из исходников:export function reactive<T extends object>(target: T): UnwrapNestedRefs<T>
. И итоге, если у вас не меняется заголовок, то можно было просто константой сделать.Vuex давным давно
deprecated
В моде нынче
async/await
Код
js const gallery = computed(() => { return store.state.gallery; });
упрощается доconst gallery = computed(() => store.state.gallery);
Привет линтерам и форматерам.В компоненте
App.vue
можно обойтись без хукаonMounted
Создание простого SPA на VueJs с использованием CMS Strapi