【发布时间】:2017-11-21 13:29:16
【问题描述】:
我正在使用 Ionic 3 创建一个示例程序,其中我使用 SQLite 来存储数据。我使用了一个常见的插入查询,它将拆分列和值并将这些详细信息存储在数据库中,但是当我尝试运行程序时,它向我显示每个错误数据都不是函数。 我已经使用每个循环来拆分列和值,但我在 Ionic 1 - AngularJS JavaScript 中使用了相同的方法,它可以正常工作。谁能告诉我下面的代码有什么问题?
insert(tblName, data) {
console.log('insert function in db got called: ', data);
this.columns = [];
this.values = [];
data.forEach(function (value, column) {
this.columns.push(column);
this.values.push(value);
console.log('columns', this.columns);
console.log('values', this.values);
});
console.log('columns: ', this.columns);
console.log('values: ', this.values);
var question = (Array(this.columns.length + 1).join('?,')).slice(0, -1);
return new Promise(resolve => {
var insertQuery = 'INSERT INTO ' + tblName + ' (' + this.columns.join(', ') + ') VALUES (' + question + ');';
console.log('insertQuery: ', insertQuery);
this.db.executeSql(insertQuery, this.values, (r) => {
console.log('Inserted... Sucess..', this.values);
this
.getRows()
.then(s => {
resolve(true)
});
}, e => {
console.log('Inserted Error', e);
resolve(false);
})
})
}
错误部分:
data.forEach(function (value, column) {
this.columns.push(column);
this.values.push(value);
console.log('columns', this.columns);
console.log('values', this.values);
});
【问题讨论】:
-
数据是数组吗?
-
简单,数据不是数组..你不明白
标签: javascript angular typescript ionic3