假设一个名为projects.new的状态,其中new是项目的嵌套状态.
有没有办法隐藏父模板以仅显示子模板?
有没有办法隐藏父模板以仅显示子模板?
您可以检查状态(路线)何时更改并隐藏父视图.
Demo in jsfiddle.这个工作示例使用
AngularUI Router,但逻辑与标准ngRoute几乎相同.
- var parents = ['parent'];
- $rootScope.$on('$stateChangeSuccess',function(event,toState) {
- $scope.hideParent = parents.indexOf(toState.name) !== -1 ? false : true;
- });
或者我们可以检查状态名称是否包含父状态名称.一个简单的正则表达式模式可以告诉我们,状态名称使用点表示法来分隔parent.child.
- var re = /^projects.\w+/;
- $rootScope.$on('$stateChangeSuccess',toState) {
- $scope.hideParent = re.test(toState.name);
- });