【发布时间】:2016-12-25 08:27:23
【问题描述】:
在 Angular 2 中,我想知道是否可以定义一个包含多个其他数组的数组。仅仅表明我的意思可能更容易:
我开始使用这个:
export class PaymentDetails {
account: any[];
bpNumber: number;
}
但这给了我一个问题,当我填充它时,我无法真正访问帐户数组中的数据,因为我想要其中包含更多数组。
所以现在我想这样定义我的类:
export class PaymentDetails {
account: [
debitAccount: [
{
debitAccountId: string;
debitBankCode: string;
debitBankName: string;
debitCountryCode: string;
debitAccountNumber: string;
debitAccountHolder: string;
debitContinous: string;
debitDueDate: string;
iban: string;
bic: string;
}
],
ccAccount: [
{
ccAccountId: string;
ccCompanyCode: string;
ccNumber: string;
ccStart: string;
ccExpiry: string;
ccDsbTransactionId: string;
ccCardholderName: string
}
]
];
bpNumber: number;
}
这有可能吗?
这个类正在被这个 InMemoryDataService 填充
export class InMemoryDataService {
createDb() {
let paymentDetailsDB = [
{
account: [
{
debitAccount: [
{
debitAccountId: '8736583',
debitBankCode: '45345',
debitBankName: 'KSK HGTT',
debitCountryCode: 'DE',
debitAccountNumber: '123453463',
debitAccountHolder: 'A Berg',
debitContinous: '',
debitDueDate: '',
iban: 'DE12344235',
bic: '324645',
},
{
debitAccountId: '6567456',
debitBankCode: '55463453',
debitBankName: 'GRDFE',
debitCountryCode: 'DE',
debitAccountNumber: '000123492',
debitAccountHolder: 'A Berg',
debitContinous: '',
debitDueDate: '',
iban: 'DE43523453',
bic: '123547665',
}
],
ccAccount: [
{
ccAccountId: '23413',
ccCompanyCode: '254345',
ccNumber: '238857827368837',
ccStart: '2010-10-05',
ccExpiry: '2018-10-05',
ccDsbTransactionId: '235231',
ccCardholderName: 'Anne Berg',
}
],
}
],
bpNumber: 4711,
}
];
return {paymentDetailsDB};
}
}
【问题讨论】:
-
有效的 javascript 代码 == 有效的打字稿代码。看看这个:stackoverflow.com/questions/966225/…
-
查看您的代码,我看到以下内容:(1)您的类定义说“我希望我的数组具有属性”但是(2)您填充 paymentDetailsDB 的代码声明“每个数组项都有子项数组”。 JS 不允许 #1 但 #2 完全有效(mxii 在下面写了一个 #2 实现的示例)
标签: html arrays json angular typescript