这是我如何路由到两个不同的URL:
.state('cars', {
url: "/cars/:title",
templateUrl: 'templates/cars.html',
controller: 'article',
})
.state('vegetables', {
url: "/vegetables/:titel",
templateUrl: 'templates/vegetables.html',
controller: 'article',
})
控制器'文章'看起来像这样:
.controller('article', function($scope, $http, $stateParams) {
$http({
method: 'POST',
url: "script.php",
data: {'type': type, 'title': $stateParams.title},
});
});
我的问题是如何在控制器的数据中设置变量类型?在这个例子中,类型可以是' cars'或者'蔬菜'。我可以在状态部分设置变量吗?
答案 0 :(得分:1)
.controller('article', function($scope, $http, $stateParams,$state) {
$http({
method: 'POST',
url: "script.php",
data: {'type': $state.current.name, 'title': $stateParams.title},
});
});
答案 1 :(得分:0)
我不知道您使用的路由器或Angular的版本,但在Angular 1.2.x中使用ui.router模块(插件),您会:
1)将$state
注入您的控制器,然后执行以下操作:
2)$state.go('cars', {'title': 'an awesome car'})