我使用WatermelonDB作为我的应用程序的本地数据库.
我在类AccessDB中有一个方法getPlaces():
static async getPlaces() {
const postsCollection = database.collections.get('places');
const allPosts = await postsCollection.query().fetch();
return allPosts;
}
使用带异步和等待的AccessDB.getPlaces()调用getPlaces()可以正常工作.如何获取与查询匹配的结果?
最佳答案 变量allPosts是一个包含所有位置的数组.因此,要访问这些地方的属性,您可以在另一个类中进行:
import AccessDB from './AccessDB';
然后在某个地方举个例子
(async () => {
try {
const places = await AccessDB.getPlaces();
var buffer = '';
for (place in places) {
buffer += places[place].name + '\n'
}
console.log(buffer)
} catch(e) {console.log(e)}
})()
使用console.log进行调试时必须小心
1)如果一个接一个地快速执行,console.log会跳过输出,例如:如果你在上面的for循环中每次调试时都使用console.log来放置[place] .name
2)如果你console.log(地方)你看到的就像你的console.log(数据库)一样,这是非常令人困惑的.您可能会看到[Object object],[Object object] …,您在使用alert(places)时会看到它.