【发布时间】:2015-09-07 15:27:45
【问题描述】:
在 Angular 设置中,我选择了 Angular UI-router 在视图之间切换。
我的配置如下:
.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 Slug。
我的问题是:
- 使用路由使 Angular 网站 SEO 友好的一般原则是什么?
- 如何通过添加 url slug 来更改我的 Angular 路由器的 url(见上文)?
- 更改网址会让我的网站对 SEO 友好吗?
谢谢!
【问题讨论】:
-
我还开始研究一个库 - github.com/jjbskir/angular-prerender - 预渲染 html 页面以帮助 SEO 和漂亮的 url。
标签: angularjs seo angular-ui-router angular-routing