Подкаталог Angular приложение в хостинге Firebase

Пытался развернуть мое угловое приложение в подкаталоге /grid но здесь ничего не видно

  1. Для index.html я добавил <base href="/grid/" />
  2. Для конфигурации Firebase я использовал

    "rewrites": [ {
        "source" : "/grid/**/*",
        "destination" : "/grid/index.html"
     } ]
    
  3. Для углового конфига,

    angular.module('columns', [
      'ui.router',
      'columns.main',
    ])
    .config(function($stateProvider, $urlRouterProvider, $locationProvider) {
       'use strict';
    
       $locationProvider.html5Mode(true);
       $urlRouterProvider.otherwise('/');
    
       $stateProvider
         .state('main', {
           url: '/',
           templateUrl: '/columns/main/main.html',
           controller: 'MainCtrl'
         });
       });
    
  4. И сборка будет иметь

     module.run(['$templateCache', function($templateCache) {
       $templateCache.put('/columns/main/main.html','<something>');
     }]);
    

Если я запускаю его локально и меняю базовый тег на <base href="/" />, это будет работать нормально. Кто-нибудь видит ошибку?

1 ответ

Не уверен, что вы все еще ищете, я просто наткнулся на ваш вопрос, когда искал его сам.

У вас может быть подпапка в вашей (публичной) директории хостинга Firebase под названием "/grid", и правильное правило перезаписи будет:

"rewrites": [ {
  "source" : "/grid/**",
  "destination" : "/grid/index.html"
} ]

Это без лишних "/*" в конце. Из вашей конфигурации кажется, что вы предоставили только правила для вашего углового приложения, вам также может понадобиться установить соответствующие правила префикса для вашего углового маршрутизатора.

Надеюсь, это поможет:)

Другие вопросы по тегам