创建一个模拟类,用于为我的Angular2 TypeScript项目生成示例数据。我仍然是编程的初学者,并且努力使用有关TypeScript的信息。我的问题:
我想创建100个项目并将它们保存在一个数组中。将动态生成100个项目。我使用的静态方式非常简单,但我怎么能动态地做到这一点?我从一些迭代代码开始,但我怎样才能最好地替换console.log代码,并让迭代的输出作为静态数据。我需要一些例子
mock-names.ts (静态)
export var NAMES: Name[] = [
{"id": 01, "name": "Tony"},
{"id": 02, "name": "Jake"}
]
mock-names-dynamic.ts (动态)
export var NAMES = [];
for (let i = 1; i < 100; i++) {
console.log(i);
}
name.ts (名称类文件)
export class Name {
id: number;
name: string;
}
答案 0 :(得分:20)
您所要做的就是在Javascript中使用数组的推送功能。
var NAMES = [];
for (let i = 1; i < 100; i++) {
let newName = {
id:i.toString(),
name:"Tony"
};
NAMES.push(newName);
}
答案 1 :(得分:0)
ES6方式:
const getData = () => Array.from(new Array(100), (val, index) => ({
id:index.toString(),
name:"Tony"
};);
答案 2 :(得分:0)
动态初始化的另一种方法,如果不确定数组的大小-
let list:Array<{_id:string,name:string}> = Array()
然后只需使用循环即可推送值
list.push({_id:'it001',name:'Sam'})