AngularJS ui-router 使用 $state.params 和查询导航状态
AngularJS ui-router navigating states with $state.params and queries
我有一个具有多个状态的应用程序,每个状态都有嵌套视图。 一个状态有一个条件模板Url,并且基于$state.param
将显示特定的HTML/JS。我想对状态的 URL 设置查询,以便我知道单击它时正在查看哪个列表项。 我无法弄清楚如何设置 url 查询并过渡到所需状态的视图。
我的状态:
.state('index', {
url: '/',
views: {
'@' : {
templateUrl: 'views/layout.html'
},
'top@index' : {
templateUrl: 'views/top.html',
controller: function($scope, $state) {
$scope.logOut = function() {
$state.go('login');
};
}
},
'left@index' : { templateUrl: 'views/left.html' },
'main@index' : { templateUrl: 'views/main.html' }
}
})
.state('index.list', {
url: 'list?item',
templateUrl: 'views/lists/list.html',
controller: 'ListCtrl'
})
.state('index.list.details', {
url: '/',
params: {
detail: 'overview'
},
controller: ctrl,
views: {
'details@index' : {
templateUrl: function($stateParams) {
if($stateParams.detail === 'status' ) {
ctrl = 'StatusCtrl';
return 'views/details/status.html';
} else if ($stateParams.detail === 'overview') {
ctrl = 'OverviewCtrl';
return 'views/details/overview.html';
}
}
}
},
})
在我的控制器中 index.list
,这是我拥有列表并单击并填充详细信息视图的地方。
HTML & Js:
<div class="channel" ng-repeat="item in items" ng-click="viewListDetails(item)">
$scope.viewListDetails = function(item) {
$location.search('item', item.id);
$state.go('index.list.details', {detail: 'status'}, {reload: true})
};
我上面的JS通过函数运行,但它什么也不做!它不会为该状态设置查询或转换到所需的视图。
任何帮助不胜感激!
index.deviceList.detail
不是一个定义的状态。您可能打算写index.list.details
.
相关文章:
- 内部分区字体大小获胜'调整浏览器窗口大小时不会随媒体查询而更改
- j查询导航超级菜单通过点击不悬停
- j查询单击导航不起作用
- breadjs导航刷新“;此查询没有resourceName;
- j查询滑块导航问题
- 使用 javascript 导航到页面并发送查询字符串
- j查询以切换导航菜单
- 使用显示的响应式导航栏:无仍然显示,即使它旨在显示何时使用媒体查询调整屏幕大小
- j查询更改/删除导航链接上的下划线
- AngularJS ui-router 使用 $state.params 和查询导航状态
- 在 Ajax 导航中查询 Ajax 导航
- 单击导航按钮时,如何停止查询动画que
- 使用查询的响应式导航
- 在子路由器之间导航时保留查询字符串
- 编号页面导航脚本不适用于搜索标签和查询结果
- 如何使用“;滚动到“;以考虑不同媒体查询时的固定导航高度
- 在微风中的投影查询中导航树
- j查询移动版 |页面之间的导航
- 在 BreezeJS 中查询导航属性
- 无法在媒体查询上切换我的导航栏,寻找解决方案