我正在使用$stateProvider
爲我的應用程序繪製路線。我希望網址是有意義的,這樣,而不是在URL中通過id獲取新聞應用程序的日期,類別和標題。angularjs狀態提供程序在URL中使用除id以外的其他值
目前我可以得到狀態加載,當我做
.state('viewArticle', {
url: '/news/:articleId',
templateUrl: 'view-article.html'
})
我得到http://www.example.com/#!/news/5517374f286ff5ba79037568
我想獲得相同的觀點裝有我的文章的URL http://www.example.com/#!/news/2015-04-04/weather/tomorrow
我出所需的模板可以實現這一點,當我硬編碼的狀態的網址
.state('viewArticle', {
url: '/news/2015-04-04/weather/tomorrow',
templateUrl: 'view-article.html'
})
但我不能工作如何通過從我的數據中的多個參數。 這可能嗎?這最好如何實現。
這是我想出來的,但沒有成功。
//angular.module().config
.state('viewArticle', {
//url: '/news/:articleId',
//url: '/news/2015-04-04/weather/tomorrow',
url: '/news/:year/:category/:title',
templateUrl: 'view-article.html'
})
//view-article.html (this seems ok as it works when state hard coded)
go('/' + article.date + '/' + article.category + '/' + article.title
//controller
$scope.go = function(path) {
$location.path(path);
};
你是說'去( '/新聞/' + AR ....'吧? –
@SergiuParaschiv是 – ak85
您可能需要'$ scope。$ apply()'在$ location.path之後' –