我试图将整个结果作为从sqlite查询结果对象的排数组:
我已经尝试过results.rows.item(i).id
,它工作正常,但是我需要获得整个行而不是仅一个项目,我尝试使用Expo文档中的rows.array (_number)
,但我无法弄清楚如何实际使用.array(_number)
我的代码片段:
iris.transaction(tx => {
tx.executeSql(
`select id, date from days`,
[],
(tx, results) => {
for(i=0; i<results.rows.length; i++){
var date = results.rows.item(i).date.split('-');
}
}
)
});
根据世博文档,result.rows
具有_array
,它将所有项目返回作为数组,您可以尝试像
if (result && result.rows && result.rows._array) {
/* do something with the items */
// result.rows._array holds all the results.
}
希望这会有所帮助!
打字条解决方案以正确地铸造_ array而不使用;
tx.executeSql("SELECT * FROM ITEMS", [], (_, { rows }) => {
const r = rows as unknown as { _array: MyItem[] };
result = r._array;
});