亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在 Angular 的 forEach 循環中使用返回值?

如何在 Angular 的 forEach 循環中使用返回值?

眼眸繁星 2023-01-06 11:26:15
我有一個包含多個對象的數組,我想在*ngFor循環中使用它。我想用一個div容器循環這個,并想將一個 css 類添加到 div 容器以顯示彼此相鄰的容器。css 類在對象中定義,我需要將其轉換為有效類,例如col-sm-6.所以我創建了一個函數來在對象中搜索 css 類并將其轉換為有效的 css 類。但是我的函數只返回 1 個 css 類,而不是每個對象的正確 css 類。讓我們看看我的代碼:大批:elements = [    {        title: 'Test1',        class: ["ColumnWidth3"]    },    {        title: 'Test2',        class: ["ColumnWidth9"]    }]HTML:<div *ngFor="let column of elements" [ngClass]="columnClass()">    <h1>{{column.title}}</h1></div>功能:columnClass() {    const columnClass = this.elements.filter((child: any) => child.class.includes('ColumnWidth') >= 0);    columnClass.forEach(element => {      this.item = element.class.find((class:any) => class.indexOf('ColumnWidth') >= 0).split('ColumnWidth').pop();    });        return 'col-sm-' + this.item;  }}所以我想要得到的是col-sm-3第一個對象和col-sm-9第二個對象的類。并將每個對象的 css 類添加到該對象的 div 容器中。但是我的函數只返回col-sm-9. 我怎樣才能確保兩個對象都得到正確的類?
查看完整描述

1 回答

?
肥皂起泡泡

TA貢獻1829條經驗 獲得超6個贊

下面的例子怎么樣?


零件:


 defineClass(classList: string[]) {

   const item = classList.find(x => x.startsWith("ColumnWidth"));

   return 'col-sm-' + item?.charAt(item.length - 1);

 }

模板:


<div *ngFor="let column of elements" [ngClass]="defineClass(column.class)">

  <h1>{{column.title}}</h1>

</div>


查看完整回答
反對 回復 2023-01-06
  • 1 回答
  • 0 關注
  • 99 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號