当前位置: 首页 > 面试题库 >

Angular 2:ngFor完成时回调

白星腾
2023-03-14
问题内容

在Angular 1中,我编写了一个自定义指令(“ repeater-ready”),ng-repeat可在迭代完成后与之一起使用以调用回调方法:

if ($scope.$last === true)
{
    $timeout(() =>
    {
        $scope.$parent.$parent.$eval(someCallbackMethod);
    });
}

标记中的用法:

<li ng-repeat="item in vm.Items track by item.Identifier"
    repeater-ready="vm.CallThisWhenNgRepeatHasFinished()">

如何ngFor在Angular 2中实现类似的功能?


问题答案:

您可以使用类似以下内容(ngFor局部变量):

<li *ngFor="#item in Items; #last = last" [ready]="last ? false : true">

然后,您可以使用设置器拦截输入属性的更改

  @Input()
  set ready(isReady: boolean) {
    if (isReady) someCallbackMethod();
  }


 类似资料:
  • 我想检查实际元素是否有值。 例如,我想检查巧克力是黑色还是白色。根据这个,我想显示正确的文本。 如何修复代码,使其正常工作?

  • 大家好我想发送数据选择选项 Html TS optValue是只有名字的事件但我需要t 谢谢你!

  • 问题内容: 我想淡出一个元素(将其不透明度转换为0),然后在完成后从DOM中删除该元素。 在jQuery中,这很简单,因为您可以指定动画完成后要执行的“删除”操作。但是,如果我希望使用CSS3过渡进行动画处理,是否可以知道过渡/动画何时完成? 问题答案: 对于过渡,您可以使用以下内容通过jQuery检测过渡的结束: 对于动画,它非常相似: 请注意,您可以将所有浏览器前缀的事件字符串同时传递到bin

  • 我想在完成后执行回调,但它不能正常工作。我该怎么做呢?

  • 我试图使用ngFor显示选项列表,但只满足某些条件,是否可以一起使用ngFor和ngIF来实现这一点?

  • 我正在创建一个Angular2项目,但复选框的双向绑定有问题。 我有一个名为listItem和List的类: 我正在从Azure search调用列表,该列表工作正常。问题是当我只是将值设置为复选框时。 但该值在单击时也始终为false。我试图使用[(ngModel)],但也不起作用。我还尝试创建一个函数: 但我收到了这个错误: 无法分配给对象“[object]”的只读属性“checked” 为什