使用角度 JS 中的解析对路由进行条件化
Conditionalizing routes with the resolve in angularJS
我正在尝试根据角度的屏幕宽度更改当前路线。我的解析函数在 UI 呈现之前运行,我可以确定是否要显示屏幕的移动变体。
when "/messages/:id",
templateUrl: "../templates/messages/show.html"
controller: "MessageCtrl"
resolve:
route: ["$location", "Device", "$routeParams", ($location, Device, $routeParams) ->
console.log($routeParams)
if Device.screenWideEnough(768)
console.log "wide enough"
$location.path "/bigMessageScreen"
# $location.path("/bigMessagesScreen").search({messageId : $routeParams.id})
]
但是,我不确定如何从解析函数中的路由中检索id
参数。我已经注入了$routeParams但在检查它时返回了一个空对象。
这样做的"角度方式"是什么?这感觉很笨拙,但我需要检索参数的值,以便我可以正确生成新路由。
$route
服务似乎具有未来路由引用的参数,即使$routeParams
没有。以下代码正常运行:
resolve:
route: ["$location", "Device", "$route", ($location, Device, $route) ->
if Device.screenWideEnough(768)
$location.path("/messages").search({id : $route.current.params.id})
]
相关文章:
- Emberjs应用程序加载在除Index之外的所有路由上
- 正在使用$location.path(.)路由ng视图
- 在AngularJS应用程序中使用封装指令和路由的推荐方式是什么
- 通过js在新选项卡中有条件地打开url
- 我已经创建了一个jquery转盘,并使用if条件来运行和停止转盘
- jQuery-有条件地附加HTML
- 根据某些条件在视图之间切换
- 如何做到这一点,使代码在不传递条件后执行函数
- 有条件更新d3.js力图中节点的最佳方法
- javascript中的布尔条件
- Woocommerce产品选项有条件
- 基于两个条件退出While循环
- 条件路由更改 Angular 2 中的默认路由
- AngularJS-有条件地为路由设置控制器
- 使用角度 JS 中的解析对路由进行条件化
- 骨干路由器路由定义,以处理所有这些条件
- If条件在我的路由提供程序中
- 如何实现angularjs基于条件的动态路由
- 在Backbone.js中有条件地执行路由
- 快速 - 条件路由