Проблема с ленивым роутингом на Vue

Всем привет!

Есть проблема с тем, что view IndexOpr не работает и выдается ошибка: "TypeError: Cannot read properties of null (reading 'nextSibling')". Причем "nextSibling" нигде не используется(это сгенерировано Vue).

Примечательно, что вместе с загрузкой IndexOpr.js, загружается заново и index.js и на сколько я понимаю, ошибка как раз и происходит.

Обычный роутинг работает без нареканий, но ожидается что файлы будут подгружаться по надобности.

UPD: При добавлении css во view динамически подгружаемой страницы вылезает новая ошибка: "GET http://Локальный_сервер/assets/IndexOpr.js net::ERR_ABORTED 404 (Not Found)". Тут проблема заключается в том, что путь отображается не относительно index.js(Основного файла vue после build).

Если кто-то сталкивался с похожей проблемой или есть мысли как решить данную проблему - буду безумно благодарен!

Route:

import { createRouter, createWebHistory } from 'vue-router';
import HomeView from '@/views/HomeView.vue';
import IndexSdo from '@/views/IndexSdo.vue';

const router = createRouter({
  history: createWebHistory(import.meta.env.BASE_URL),
  routes: [
    {
      path: '/index-vue.html',
      name: 'home',
      component: HomeView
    },
    {
      path: '/index-opr.html',
      name: 'index-opr',
      component: ()=>import('@/views/IndexOpr.vue'),
    },
    {
      path: '/index-sdo.html',
      name: 'index-sdo',
      component: IndexSdo
    },
  ]
})

export default router

Vite.config:

export default defineConfig({
  plugins: [
    vue(),
    vueJsx(),
    VueDevTools(),
  ],
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    }
  },
  build: {
    rollupOptions: {
      output: {
        entryFileNames: `assets/[name].js`,
        chunkFileNames: `assets/[name].js`,
        assetFileNames: `assets/[name].[ext]`
      }
    }
  },
})

Стек: yii2, vue 3, vite


Ответы (1 шт):

Автор решения: Артур Сафин

Проблема заключалась в хэше, который подключал ассет yii:2. Стоило его отключить, как все заработало.

В моем случае TypeError: Cannot read properties of null (reading 'nextSibling') означает, что index.js подключается дважды из-за того, что IndexOpr не мог найти index.js файл.

Надеюсь, кому-нибудь поможет это решение в будущем.

→ Ссылка