【问题标题】:Angular ForEach in Angular4/Typescript?Angular4/Typescript 中的 Angular ForEach?
【发布时间】:2017-11-14 02:19:30
【问题描述】:

当我搜索这个时,我看到了很多关于使用 ngFor 的答案,但我了解 ngFor。我在询问 Angular 1 控制器中使用的 angular.forEach() 构造函数。这些在 TS 中被标记为错误并且不会编译。

例如,我有一个带有嵌套循环的:

 _this.selectChildren = function (data, $event) {
  var parentChecked = data.checked;
  angular.forEach(_this.hierarchicalData, function (value, key) {
    angular.forEach(value.children, function (value, key) {
      value.checked = parentChecked;
    });
  });
};

这个结构在 Typescript for Angular 4 中是什么样子的?

【问题讨论】:

  • _this.hierarchicalData.forEach 应该可以工作.. 为什么你需要 angular.forEach 这里。原生最好:p

标签: javascript angular typescript foreach


【解决方案1】:

像这样在 angular4 foreach 中。尝试这个。

 selectChildren(data, $event) {
      let parentChecked = data.checked;
       this.hierarchicalData.forEach(obj => {
          obj.forEach(childObj=> {
            value.checked = parentChecked;
         });
      });
    }

【讨论】:

【解决方案2】:

你可以试试 typescript 的For

selectChildren(data , $event){
   let parentChecked : boolean = data.checked;
   for(let o of this.hierarchicalData){
      for(let child of o){
         child.checked = parentChecked;
      }
   }
}

【讨论】:

  • for 不是 TypeScript。它是 JavaScript。
【解决方案3】:
arrayData.forEach((key : any, val: any) => {
                        key['index'] = val + 1;

                        arrayData2.forEach((keys : any, vals :any) => {
                            if (key.group_id == keys.id) {
                                key.group_name = keys.group_name;
                            }
                        })
                    })

【讨论】:

    【解决方案4】:

    在 Typescript 中使用 For Each,如下所示。

    selectChildren(data, $event) {
    let parentChecked = data.checked;
    for(var obj in this.hierarchicalData)
        {
            for (var childObj in obj )
            {
                value.checked = parentChecked;
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-06-21
      • 2017-12-06
      • 1970-01-01
      • 2018-07-19
      • 1970-01-01
      • 2018-11-23
      • 2017-09-13
      相关资源
      最近更新 更多