【发布时间】:2019-09-15 19:09:37
【问题描述】:
我从通过 Sails 模型获得的 MySQL RowDataPacket 数组初始化了一个 Map。然后,当控制台记录该 Map 时,我可以看到结果,但是当我使用 Map.prototype.forEach 迭代 Map 时,它没有迭代。谁能检查我做错了什么?
我正在使用以下技术。 网络框架:帆:1.1.0 运行时:NodeJs:v8.16.0 打字稿 Javascript:es6 数据库:MySql:5.6
import { Currency } from 'typings/finance';
import sails from "sails"
//Sails Model
const Currency = sails.models.currency
export class CurrencyConverter {
private : convertionRates Map<string, Currency>
public constructor() {
//Get a new Map
this.convertionRates = new Map<string, Currency>()
}
public async inIt() {
//Get Data through sails model object form MySql database
const ConvertionRatesFromDB: Currency[] = await Currency.find()
//Update this.convertionRates Map
for (let ConvertionRateFromDB of ConvertionRatesFromDB) {
this.convertionRates[ConvertionRateFromDB.code] = ConvertionRateFromDB
}
//Data shows here :/
console.log(this.convertionRates);
//But nothing logs here :(
this.convertionRates.forEach(() => console.log("Hello"))
}
}
我希望在控制台中多次记录Hello。但是没有输出。
【问题讨论】:
-
输入错误。我编辑了那个。感谢您的发现。
标签: mysql node.js typescript sails.js