angular 中的$routeParams和$route.current.params的区别是什么?
路由:
.when('/view/:recipeId',{
controller:'ViewRecipe',
templateUrl:'views/viewRecipe.html',
resolve:{
recipe:['loadRecipe',function(loadRecipe){
return loadRecipe()
}]
}
})
当路由跳到 http://10.22.7.40:9000/#/view/3 的时候
使用$route.current.params为{recipeId:3},但是$routeParams却是{}
想知道原因是什么? 谢谢~
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我不知道你是在哪里查看
$routeParams
的,我猜是在resolve:
那里吧?这就是原因。请仔细阅读$routeParams
的文档,不长,10 分钟就读完了。帮你总结一句话:然后你可以再看看文档里的这个例子,注意这个例子里模拟了异步的延迟,于是当你切换 routes 的时候,仔细观察
$route.current.params
和$routeParams
的变化顺序;另外看清楚这个例子是在哪里去获取$routeParams
的。要学会看文档呀~
建议使用angular-ui-router插件,获取参数直接通过$stateParams即可