В настройках Angular я выбрал Angular UI-маршрутизатор для переключения между представлениями.
Мой конфиг выглядит следующим образом:
.config(function($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('/app/home');
$stateProvider
// Nav
.state('app', {
url: '/app',
templateUrl: 'templates/navbar.html',
abstract: true,
controller:'AppCtrl as app',
})
// Home
.state('app.home', {
url: '/home',
templateUrl: 'templates/home.html',
controller:'HomeCtrl as home',
})
.state('app.browse', {
url: '/browse',
templateUrl: 'templates/browse.html',
controller:'BrowseCtrl as browse',
})
.state('app.browse-detail', {
url: '/browse/:productId',
templateUrl: 'templates/browse-detail.html',
controller:'BrowseDetailCtrl as detail',
})
})
Это приведет к тому, что URL-адрес продукта будет выглядеть следующим образом:
www.website.com/app/#/browse/productId
Вместо этого я хотел бы видеть что-то вроде:
www.website.com/browse/productId/most-awesome-product
где most-awesome-product
— это слаг URL.
Мои вопросы:
- Каковы общие принципы оптимизации веб-сайтов Angular с помощью маршрутизации?
- как я могу изменить URL-адрес моего углового маршрутизатора, добавив URL-адрес (см. Выше)?
- сделает ли изменение URL-адреса мой сайт SEO-дружественным?
Спасибо!