可以't使用URL导航到ui路由器状态
Can't navigate to ui-router state with URL
我正在使用ui路由器开发一个简单的angular应用程序。我有几个状态可以选择并编辑有关发布者的信息。相关配置:
.state('select-publisher', {
url: '/select-publisher',
templateUrl: '/Content/superadmin/src/templates/publishers/publishers.html'
})
.state('publisher', {
abstract: true,
url: 'publisher/{id:int}',
templateUrl: '/Content/superadmin/src/templates/publishers/publisher.html'
})
.state('publisher.details', {
url: '/details',
templateUrl: '/Content/superadmin/src/templates/publishers/details.html'
})
.state('publisher.ad-tags', {
url: '/ad-tags',
templateUrl: '/Content/superadmin/src/templates/publishers/ad-tags.html'
})
.state('publisher.native-ads', {
url: '/native-ads',
templateUrl: '/Content/superadmin/src/templates/publishers/native-ads.html'
})
在选择发布者状态中,我有一个可用发布者的大列表。它们中的每一个都绑定到一个ng点击事件,该事件触发我的控制器中的以下功能:
$scope.selectPublisher = function(publisher) {
publisherService.setSelectedPublisher(publisher);
$state.go('publisher.details', {id: publisher.Id});
};
这工作得很好,并将我带到publisher.details状态并呈现正确的视图。此时,我浏览器中的URL指向localhost:1337/superadmin#/publisher/39/details
,其中39是我选择的发布者的ID。
问题是,如果我刷新这个页面,或者试图通过将URL从应用程序的另一个区域粘贴到浏览器中直接导航到它,我总是会回到select-publisher
状态。我希望能够配置我的状态,以便能够基于URL导航到详细信息状态(或任何其他状态)。
值得注意的是,在我所有的州之后,我确实定义了一条包罗万象的路线:
$urlRouterProvider.otherwise('/select-publisher');
我假设出于某种原因,这是被触发的,但我无法解释为什么导航在我的应用程序中使用$state.go
(如我在控制器中所示)以及在HTML模板中使用ui-sref directive
(但不是直接导航到URL)。
可能是因为缺少斜杠url:/publisher/{id:int}
相关文章:
- 使用导航属性创建Kendo UI网格模型的问题
- 如何在angular bootstrap ui中聚焦活动导航选项卡中的拳头输入字段
- Angular UI&引导程序:点击链接时折叠移动导航栏
- 使用 ui 路由器导航到非默认状态
- Jquery UI导航栏,悬停效果
- 剑道UI网格键盘导航
- 阻止Jquery UI更改引导程序导航栏中的样式
- 可以't使用URL导航到ui路由器状态
- 导航后设置angular ui tinymce编辑器内容
- 温泉UI导航器
- 来回导航时删除/取消UI路由器中的动画
- 有条件地导航到带有角度 ui 路由器的状态
- 角度 UI 固定自定义导航栏
- Kendo UI app.navigate(“#:back”);并不总是导航回来
- 如何使用引导导航栏构建我的流星烈焰 UI
- 剑道UI股价图导航器API
- Ons导航(温泉UI),使用javascript代码
- AngularJS ui-router 使用 $state.params 和查询导航状态
- 当我使用jQuery Mobile的UI时,如何在jQuery Mobile中切换单击的导航按钮颜色
- 使用 ui 路由器的浏览器导航控件