我的 Angular ui 路由器正在将状态/ View 更改为:
$stateProvider
.state({
name: 'home',
url: '/',
template: '<home-view></home-view>',
})
有没有办法将绑定(bind)参数传递到 UI 路由器中的
例如
<home-view my-data="dataObject">
或
<home-view my-data="myService.getMyData()">
my-view 的 Controller 位于自己的文件中,包含实际的模板和指令。
最佳答案
最后我的同事帮助解决了这个问题。解决方案使用解析来获取数据,然后将其作为路由器范围变量传递给模板。重要的一点是,路由器中定义的 Controller 有自己的范围,而不是“主视图”的范围。在我的家庭 Controller 中,可以通过 $scope.parent 访问路由器 Controller 。
.state({
name: 'home',
url: '/',
resolve: {
cData: (MyService) => {
return MyService.getMyData()
}
},
controller: function (cData) {
this.data = cData;
},
controllerAs: 'ctrl',
template: '<home-view my-data="ctrl.data"></home-view>'
})
关于javascript - 将参数传递给 Angular UI 路由器模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40833204/