Если вы записываете в store в Nuxt.js в Middleware, а на странице store оказывается пустой, может быть несколько причин, по которым это происходит. Ниже я перечислю несколько возможных проблем и решений.
1. Проверьте, что вы правильно настроили стор в Nuxt.js. Вам нужно создать директорию с именем "store" в корневой папке проекта Nuxt.js, а затем создать файл index.js внутри этой папки. В файле index.js вы должны экспортировать функцию, которая возвращает объект с состоянием, мутациями и экшенами вашего стора.
Пример:
// store/index.js export const state = () => ({ // состояние вашего стора }); export const mutations = { // мутации вашего стора }; export const actions = { // экшены вашего стора };
2. Убедитесь, что вы правильно используете стор в вашем Middleware. В Nuxt.js вы можете получить доступ к стору с помощью контекста. В Middleware вы можете использовать его следующим образом:
// middleware/your-middleware.js export default function ({ store }) { // использование стора }
3. Убедитесь, что вы правильно вызываете ваш Middleware. В Nuxt.js вы можете указать глобальное Middleware в файле nuxt.config.js или применить Middleware к определенным страницам в файле скрипта страницы.
Пример:
// nuxt.config.js export default { // глобальное Middleware router: { middleware: 'your-middleware' } } // pages/index.vue export default { // Middleware для этой страницы middleware: 'your-middleware' }
Убедитесь, что вы настроили и вызвали ваш Middleware правильно.
4. Проверьте, нет ли ошибок в вашем коде Middleware. Возможно, ваш Middleware генерирует ошибку, поэтому стор не записывается корректно. Проверьте консоль на наличие ошибок и убедитесь, что ваш код Middleware выполняется без проблем.
Надеюсь, что это поможет вам найти причину и решить проблему с пустым стором в Nuxt.js. Если вы продолжаете сталкиваться с проблемой, рекомендую обратиться к официальной документации Nuxt.js или сообществу для получения дополнительной поддержки.