2017-02-03 3 views
0

У меня есть Express, обслуживающий локальное приложение Angular2. Для того, чтобы выставить различные node_modules в приложении Angular2 от экспресса у меня есть что-то вроде ниже настройкиПроблемы маршрутизации на подпункт, Angular2 и Express, пытаясь обслуживать подкаталоги

config.dependencies = [ 
{ 
    staticPath: './node_modules/@angular/', 
    mntPath: '/angular' 
}, 
... 
config.dependencies.forEach((dependency) => { 
    app.use(dependency.mntPath, express.static(path.resolve(dependency.staticPath))); 
}) 

В моем index.html в приложении Angular2 У меня есть

<script src="angular/shim.min.js"></script> 
<script src="angular/zone.js"></script> 
<script src="angular/Reflect.js"></script> 
<script src="angular/system.src.js"></script> 
<script src="systemjs.config.js"></script> 
<base href="/"> 

Это всегда работало большое. Я могу перейти на любую страницу (например, localhost/settings). Мои проблемы возникают, когда я пытаюсь использовать подпункты или параметры, такие как settings /: id. Я настраиваю маршрут и из * приложения может перейти к настройкам/5, но если я перезагружу страницу, все ад сломается.

Суть проблемы заключается в жесткой перезагрузке, браузер попытался захватить shim.js, zone.js и т. Д. Из относительного пути localhost/settings/angle/zone.js, вместо localhost/угловое /. Как заставить приложение попробовать и получить ресурс из надлежащего места?

ответ

0

hah nevermind! Просто пришлось переместить базовую декларацию href над импортом systemjs, и все это соус. Большое спасибо runmarkets ответ от https://stackoverflow.com/a/35854918/3935218, который выделил решение

 Смежные вопросы

  • Нет связанных вопросов^_^