角度 - 路由解析服务问题
问题描述:
我正在研究一个角度应用程序。角度 - 路由解析服务问题
在当前版本中 - 有一个控制器在用户按下按钮时被调用 - 它打开一个模式窗口并填充内容。
我试图删除模式并重新配置应用程序,使其进入到一个新的页面
的第一页是当你点击一个人的人/people
列表,它会去一个页面像/people/view/34323
我想配置这样的应用stateprovider堆栈:
$stateProvider
.state('people-view', {
url: "/people/view/:id",
templateUrl: "partials/people/people-view.html",
controller: personDialogController,
resolve: {
politicservice:function(personservice){
personservice.getPolitics(id).then = persondata.data;
}
biography:function(personservice){
personservice.getBio(id).then = persondata.data;
}
dialogueId:function(personservice){
//id
}
}
})
这将创建一个基本的网页...但服务,用于对这项工作控制器现在不。
这就好像id没有被传递到解析函数,它就好像是persondata
then
,承诺不回电?
答
通行证$stateParams
的决心功能:
$stateProvider
.state('people-view', {
url: "/people/view/:id",
templateUrl: "partials/people/people-view.html",
controller: personDialogController,
resolve:
politicservice:function(personservice, $stateParams){
return personservice.getPolitics($stateParams.id);
}
biography:function(personservice, $stateParams){
return personservice.getBio($stateParams.id);
}
dialogueId:function(personservice, $stateParams){
//$stateParams.id
}
})
$stateParams
将包含在URL字符串中定义的所有参数的对象。有关更多信息,请参阅this问题。
它也写在咖啡脚本。 - 我仍然试着将代码硬编码到服务函数中 - 但它仍然没有采用。也许这不是正确的预期情况? –
如果你只是在一个解析函数中使用'console.log($ state)',会发生什么? – FrankerZ
_我必须在明天查看。这是我在今天比赛结束时所坚持的一项任务。 –