加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – ui-router嵌套视图访问多个控制器

发布时间:2020-12-17 17:19:06 所属栏目:安全 来源:网络整理
导读:使用ui-router,州的任何子孙都可以访问他们的父母和祖父母控制器吗? 所以例如.state(resources.resource.rates).rate状态控制器可以访问资源和资源中的$scope.objects(它们都有自己的控制器)吗? 在假设我有一个html设置,其中一切都是资源内的嵌套视图与ui-
使用ui-router,州的任何子孙都可以访问他们的父母和祖父母控制器吗?

所以例如.state(resources.resource.rates).rate状态控制器可以访问资源和资源中的$scope.objects(它们都有自己的控制器)吗?

在假设我有一个html设置,其中一切都是资源内的嵌套视图与ui-view =“content2”.但是我在资源中有另一个页面称为费率我想在与资源相同的嵌套视图中打开,但也可以访问资源控制器.

.state('resources.resource.rates',{
    url: '/rates',views:{
        "content2":{
            templateUrl: 'templates/rates.html',controller: 'CreateRatesCtrl'
        }
    }   
})

我的视图中的ng-href链接到/resources/{{resource.Id}}/rates但不打开资源ui-view中的rates页面.

所以我尝试将视图设置为content2 @ resources,就像这样

views:{
        "content2@resources":{
            templateUrl: 'templates/rates.html',controller: 'CreateRatesCtrl'
      }
}

这是因为html现在在资源ui-view中填充rates.html,并且ng-href作为resources / {{resource.Id}} / rates填充,但不幸的是我只能访问资源范围对象.我有一个资源控制器所需的resourceId.在这种情况下,设置content2 @ resources是否限制我的范围只能访问资源控制器?如果是这样我怎么能这样做,所以我也可以访问资源控制器?

解决方法

引自 ui-router wiki :

Keep in mind that scope properties only inherit down the state chain if the views of your states are nested. Inheritance of scope properties has nothing to do with the nesting of your states and everything to do with the nesting of your views (templates).

这应该足以理解状态和/或视图的嵌套给出了什么,而不是给你.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读