小编zpy*_*dee的帖子

AngularJS从子控制器访问父作用域

我已经设置了我的控制器 data-ng-controller="xyzController as vm"

我有一个父/子嵌套控制器的场景.通过使用$parent.vm.property我在嵌套的html中访问父属性没有问题,但我无法弄清楚如何从我的子控制器中访问父属性.

我试过注入$ scope然后使用$scope.$parent.vm.property,但这不起作用?

有人可以提供建议吗?

angularjs angularjs-scope

378
推荐指数
3
解决办法
48万
查看次数

ng-options上的Angular UI-Bootstrap下拉按钮

<select class="form-control" data-ng-options="t.name for t in vm.types"
data-ng-model="vm.object.type"></select>
Run Code Online (Sandbox Code Playgroud)

上面的代码显然以标准的表单控制方式显示基本下拉列表.我一直试图弄清楚如何使用Angular的ui-bootstrap指令将其转换为按钮样式下拉列表,但似乎无法获得任何结果.有没人试过这个?

angularjs hottowel angular-ui-bootstrap

7
推荐指数
2
解决办法
2万
查看次数

Angular 2 测试中的存根 ActivatedRoute

我正在努力弄清楚如何存根 angular 的激活路线以满足我的目的。在我的一个组件中,我使用路由快照来获取激活路由的 url 的一部分:

let activatedPath = this.route.snapshot.children[0].url[0].path;
Run Code Online (Sandbox Code Playgroud)

在我的测试中,我收到错误:

Error: Error in :0:0 caused by: undefined is not an object (evaluating 'this.route.snapshot.children[0].url')??
Run Code Online (Sandbox Code Playgroud)

所以我想我需要存根 Activated 路线:

class FakeActivatedRoute {
    // stub detail goes here
}
Run Code Online (Sandbox Code Playgroud)

并在我的测试中提供它:

beforeEach(async(() => {
    TestBed.configureTestingModule({
      imports: [RouterTestingModule],
      declarations: [
        SiteAdminComponent
      ],
      schemas: [NO_ERRORS_SCHEMA],
      providers: [
        { provide: ActivatedRoute, useClass: FakeActivatedRoute }
      ]
    })
     .compileComponents();
}));
Run Code Online (Sandbox Code Playgroud)

任何人都可以提供有关允许我到达的存根实现的任何指导.snapshot.children[0].url[0].path吗?我目前一无所获:-)

angular2-routing angular

4
推荐指数
1
解决办法
4986
查看次数

breeze bug:forDeach循环中的setDeleted

我遇到了我认为是Breeze中的一个bug.为了确保错误与我项目中的其他代码无关,我在Ward Bell提供的一个plunker中模拟了同样的问题.

我添加到Ward的原始plunker的代码是:

在main.html中

<button ng-click="vm.deleteHero(vm.currentHeroVm.hero)">Delete hero</button>
Run Code Online (Sandbox Code Playgroud)

并在main.js

vm.deleteHero = deleteHero;
    function deleteHero(hero) {
      console.log(hero.powerMaps.length);
      hero.powerMaps.forEach(function(powerMap) {
        console.log('Hero: ' + powerMap.heroId + ', Power: ' + powerMap.powerId);
        powerMap.entityAspect.setDeleted() // comment me out to see console.log work correctly
  });
}
Run Code Online (Sandbox Code Playgroud)

要看到手头的问题,请注意console.log我正在制作的电话.第一个显示powerMaps所选英雄的数组长度.第二个显示循环内powerMap的英雄和幂id.

有了hero选择,打开控制台窗口,并击中Delete按钮.

如果有人注释掉该行powerMap.entityAspect.setDeleted(),则应用程序会正确地遍历每行powerMap.

但是,只要powerMap.entityAspect.setDeleted()添加到代码中,就不会powerMap达到每个代码.

这意味着我目前无法可靠地遍历数组并删除实体.你会注意到,如果你继续点击删除按钮,代码最终会到达所有实体.

有什么想法吗?

breeze

1
推荐指数
1
解决办法
354
查看次数

ui.boostrap手风琴容器宽度问题

这个PLUNKER REFERS

我在ui.bootstrap手风琴中使用ng-Grid时遇到了问题.看看我的Plunker,看看问题在于什么.

基本上,当在初始页面加载时关闭子手风琴组的手风琴中放置网格时,网格的宽度为零并且不显示.

任何人都可以通过调整CSS类或捕获手风琴组事件并重新渲染网格来指明我解决这个问题的方向吗?我一直在用这个圈子跑来跑去!

编辑:道歉,普兰克现在公开!

css jquery angularjs angular-ui-bootstrap ng-grid

1
推荐指数
1
解决办法
1575
查看次数