Arrays 角度2D数组不相应地更新表行和列
我在尝试根据Angular Typescript中的不同条件初始化2D数组时遇到了一些问题。这是我的打字稿:Arrays 角度2D数组不相应地更新表行和列,arrays,angular,typescript,Arrays,Angular,Typescript,我在尝试根据Angular Typescript中的不同条件初始化2D数组时遇到了一些问题。这是我的打字稿: selectSvcNoTable: any[][] = []; const numofOrder = Number(value); // value here update according to input number if (this.selectedSvcTy === this.SVC_TYP_IPHONENET) { this.selectSvcNoTable
selectSvcNoTable: any[][] = [];
const numofOrder = Number(value); // value here update according to input number
if (this.selectedSvcTy === this.SVC_TYP_IPHONENET) {
this.selectSvcNoTable = [[new Array(numofOrder)], [new Array(3)]];
} else {
this.selectSvcNoTable = [[new Array(numofOrder)], [new Array(1)]];
}
在我的HTML中:
<tr *ngFor="let row of selectSvcNoTable; let rowIdx = index;">
<td *ngFor="let col of row; let colIdx = index;">
</td>
但是,不管我在“numofOrder”中设置的值如何,该表仅显示两行。有什么想法吗?提前谢谢
[[new Array(numofOrder)], [new Array(3)]]
此语法导致:
[
[
[0, 1, 2]
], [
[0, 1, 2]
]
]
您没有二维阵列,而是三维阵列
请尝试以下方法:
selectSvcNoTable: any[][] = [];
const numofOrder = Number(value); // value here update according to input number
if (this.selectedSvcTy === this.SVC_TYP_IPHONENET) {
this.selectSvcNoTable = [new Array(numofOrder), new Array(3)];
} else {
this.selectSvcNoTable = [new Array(numofOrder), new Array(1)];
}
嘿,我能和你核实一下我如何在HTML中循环你建议的2D数组吗?@hyperfkcb不确定你是否需要,但如果你想,当然,只要用a提出另一个问题,我很乐意帮忙,我想它仍然在同一个问题下。我试图做的是从填充的2D数组中,循环通过每个数组来创建一个表。基本上我的选择是这样的[行,列]@hyperfkcb然后在此处提供一个。这只是HTML数组的构建,我不确定你是否需要我,你应该能在5分钟内完成。嘿,提供的解决方案在列而不是行中不断增加。你有什么想法吗?