routerLink не работает со сборкой AOT

RouterLink отлично работает, когда я делаю обычную сборку JIT. Но когда я пытаюсь сделать AOT build router, ссылка на указанный маршрут не перенаправляется.

Мой html-код

<ul id="submenu" class="lista-menu aln-centro">
     <li><a 
        routerLinkActive='active'
        routerLink='home'
     >Home</a></li>
     <li><a 
        routerLinkActive='active'
        routerLink='products'
    >Products</a></li>
    <li><a 
        routerLinkActive='active'
        routerLink='about'
    >About</a></li>
    <li><a 
        routerLinkActive='active'
        routerLink='contacts'
    >Contacts</a></li>
</ul>

Поскольку маршрутизация работает в JIT-сборке, поэтому я думаю, что либо я что-то пропустил в процессе сборки моего веб-пакета, либо это ошибка в модуле @angular/router, скорее всего, первая.

Ссылка на репозиторий git с полным кодом: https://github.com/rachitbhasin/ng2-webpack-aot

Версия узла: 6.4.0 или выше.

Установить зависимости: npm install

Запустите сборку DEV/JIT: npm run start

Запустить сборку AOT: npm run build

Запустить сервер после сборки AOT: npm run server

Заранее спасибо.


person JSNinja    schedule 15.02.2017    source источник


Ответы (1)


Причина не в переадресации маршрутизатора Angular, а в http-сервере, который не может дать подходящий ответ на запрос.

Просто настройте свой http-сервер так, чтобы он всегда возвращал файл index.html.

См. этот пример с Express.

person Fuubi    schedule 17.05.2017