Я создаю одностраничное приложение. Я играл с AngularJS. Я немного нервничаю в 2.0, поэтому я открыт для альтернатив Angular. Моя задача состоит в том, что мой сайт имеет иерархическую структуру.Hiearchical Routing in Single Page Application
/Home
/About
/Blog
index.html
post1.html
post2.html
...
/Products
index.html
product1.html
product2.html
...
index.html
/Contact
/Online
form.html
index.html
Большинство SPA-приложений, которые я вижу, находятся на одном уровне. Кроме того, я не могу анимировать элементы навигации, связанные с каждым уровнем. Другими словами, когда я нажимаю ссылку на верхнем уровне, я ожидаю, что элементы поднавигации будут анимированы. Другой проблемой является динамическая загрузка содержимого. Я не хочу загружать свое приложение, когда оно загружается изначально, вместо этого я хочу отложить загрузку контента до его необходимости.
Может ли кто-нибудь рекомендовать инфраструктуру SPA, чтобы помочь мне решить эту проблему? Я не думаю, что смогу решить эту проблему с помощью Angular 1.3. Маршрутизатор в Angular 2.0 выглядит как потенциальный вариант. Пока что, это не выглядит жизнеспособным.
Спасибо!
https://github.com/angular-ui/ui-router/wiki/Multiple-Named-Views – coma
Вы всегда можете сделать это с помощью history.pushState, как показано здесь: http://html5demos.com/history –
Я должен уточнить, что вы можете «pushState» изменить URL (по любому пути) и сохранить объект JSON, называемый состоянием. Когда кто-то нажимает кнопку «Назад», будет запущено событие «popstate», которое вы можете прослушать. Атрибут event.state будет иметь ваш объект (который вы используете для перерисовки страницы соответственно). –