我的json对象结构应该是
customers: [{
customer: [
{ key: 'customername', value: 'xxxx' },
{ key: 'address', value: 'xxxxxx' }
]}, {
customer: [
{ key: 'customername', value: 'yyyyy' },
{ key: 'address', value: 'xxxxxxxxxx' }
]}]
从后端获取数据如下
const customerArray = [];
for(let content of customers[i].customer)
{
const customervalue = [];
let customername = { key: "customername", value: content.customername };
let dataItemUserId = {key: "address", value: content.address}
customervalue.push(customername);
customervalue.push(address);
customerArray.push(customervalue);
}
processDataContent['customers']= dataEntryArray;
我无法找到一种方法如何使元素“客户”?我相信我需要修改我推送到客户数组的方式,即在customerArray.push(customervalue)行中;
任何线索? 附:打字稿的新内容可能会遗漏一些非常基本的东西
答案 0 :(得分:0)
你的问题非常模糊,但我倾向于相信你对应该如何处理Typescript感到有些困惑。 也许这可能会有所帮助:
interface ICustomer {
customer: { key: string, value: string }[]
}
function GetCustomers(): ICustomer[] {
let customers: ICustomer[] = [];
for(let content of customers)
{
customers.push({
customer: [
{ key: 'customername', value: 'Stanislas' },
{ key: 'address', value: 'Belgium' }
]
});
}
return customers;
}
您也可以在typescript sandbox中运行它以查看javascript输出的内容。
使用Typescript的重点是定义类型。 在这种情况下,只需定义一个ICustomer,您的代码就会变得更具可读性。
注意:如果您对JSON有任何控制权,我建议使用以下格式使其更具可读性:
interface ICustomer {
customerName: string,
address: string
}
function GetCustomers(): ICustomer[] {
let customers: ICustomer[] = [];
for(let content of customers)
{
customers.push({
customerName: 'Stanislas',
address: 'Belgium'
});
}
return customers;
}
答案 1 :(得分:0)
我不明白为什么要存储这样的数据.. 根据您的输入和输出预期。以下简单的代码满足您的要求。
docker images purne