Ленивые маршруты загрузки в Angularjs с $ ocLazyLoad - PullRequest
1 голос
/ 25 мая 2019

Я использую Angular-ui-router для маршрутизации и oclazyload для загрузки базы каждого контроллера на маршрутах (отложенная загрузка).

Проблема: Мой route.js файл становится все больше и больше (до 8000 строк!)

Я лениво загружаю свои маршруты как контроллеры, как показано ниже.

// app.config(routes.js) ↓

$stateProvider
.state('app.warehouses', {
    url: '/warehouses',
    views: {
        "appContent@app": {
            templateUrl: 'warehouses/warehouses.html',
            controller: 'warehousesCtrl'
     },
     resolve: {
        loadCtrl: ['$ocLazyLoad', ($ocLazyLoad) => {
           return $ocLazyLoad.load({
              files: [
                 'warehouses/warehousesRoute.js', // lazy load routes
                 'warehouses/warehousesCtrl.js'
              ]
           });
        }]
     },
})


// warehousesRoute.js ↓

$stateProvider
.state('app.warehouses.warehouse', {
    url: '/warehouse/:id',
    views: {
        "appContent@app": {
            templateUrl: 'warehouses/warehouse.html',
            controller: 'warehouseCtrl'
        }
    },
    resolve: {
        loadCtrl: ['$ocLazyLoad', ($ocLazyLoad) => {
            return $ocLazyLoad.load('warehouses/warehouse/warehouseCtrl.js');
        }]
    }
})

Все работает нормальноперед обновлением приложения в дочерних представлениях.

Это означает:

Когда я иду по дочернему маршруту (app.warehouses.warehouse/:id), нажимая на ссылку, все работает нормально, но когда я обновляю страницу в дочернем маршруте (warehouse/:id),Я захожу на 404 Not Found страницу!

Как я могу решить эту проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...