我是一个多行销售订单,想要将每行作为(数字,物料代码,数量)的地图来处理,并且需要将所有这些地图都放在列表中,因此orderlines [0]是第一个地图订单行。
如果我有3行,那么下面的程序效果很好。
但是,如果我不知道行数,而行数取决于用户,那怎么定义它呢?
var orderLines = [{ 'number' : '',
'Item' : '',
'Qty' : ''
},
{ 'number' : '',
'Item' : '',
'Qty' : ''
},
{ 'number' : '',
'Item' : '',
'Qty' : ''
}
];
Run Code Online (Sandbox Code Playgroud)
我需要定义“ orderLines”,以便可以用以下代码中的数据填充它:
for(int i=0;i<=number_of_lines;i++){
orderLines[i]['number']=element.childNodes[i].childNodes[0].value;
orderLines[i]['number']=element.childNodes[i].childNodes[1].value;
orderLines[i]['Qty']=element.childNodes[i].childNodes[2].value;
}
Run Code Online (Sandbox Code Playgroud)
如果列表比索引短,则不能为列表中的特定索引分配值。您必须使用填写列表add。如果列表已在给定索引处具有值,则可以将值替换为mylist[someIndex] = someValue;
var orderLines = <Map>[]; // creates an empty List<Map>
for(int i=0; i <= number_of_lines; i++){
var map = {};
map['number'] = element.childNodes[i].childNodes[0].value;
map['Item'] = element.childNodes[i].childNodes[1].value;
map['Qty'] = element.childNodes[i].childNodes[2].value;
orderLines.add(map);
}
Run Code Online (Sandbox Code Playgroud)
要么
for(int i = 0; i <= number_of_lines; i++){
orderLines.add({
'number': element.childNodes[i].childNodes[0].value,
'Item': element.childNodes[i].childNodes[1].value,
'Qty': element.childNodes[i].childNodes[2].value});
}
Run Code Online (Sandbox Code Playgroud)
我不确定您想知道什么,但我想这就是您要寻找的
var orderLines = <Map>[]; // creates an empty List<Map>
orderLines.add({ 'number' : '',
'Item' : '',
'Qty' : ''
});
orderLines.add({ 'number' : '',
'Item' : '',
'Qty' : ''
});
orderLines.add({ 'number' : '',
'Item' : '',
'Qty' : ''
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3883 次 |
| 最近记录: |