mysql-xdevapi getCollections 承诺返回值
Posted
技术标签:
【中文标题】mysql-xdevapi getCollections 承诺返回值【英文标题】:mysql-xdevapi getCollections promise return value 【发布时间】:2020-05-20 06:38:07 【问题描述】:我一直在尝试在我的数据库架构中输出集合数组。 假设我的会话有效,我会得到一个我认为正常的 Promise 输出。
.then(()=>
return sess.getSchema('mySchema').getCollection('myCollection')
.find().fields(['name','age'])
.execute(row=>
console.log(row)
)
)
.then(()=>
let r = sess.getSchema('mySchema').getCollections()
console.log(r)
return r
)
但如果我试图获取承诺中的值
let r = sess.getSchema('mySchema').getCollections()
r.then(v=>
console.log(v)
)
它返回这些会话回调函数
[
getSession: [Function: getSession],
add: [Function: add],
addOrReplaceOne: [Function: addOrReplaceOne],
count: [Function: count],
existsInDatabase: [Function: existsInDatabase],
find: [Function: find],
getName: [Function: getName],
getSchema: [Function: getSchema],
inspect: [Function: inspect],
modify: [Function: modify],
remove: [Function: remove],
removeOne: [Function: removeOne],
replaceOne: [Function: replaceOne],
dropIndex: [Function: dropIndex],
createIndex: [Function: createIndex],
getOne: [Function: getOne]
]
【问题讨论】:
【参考方案1】:这就是 API 的工作方式。 getCollections()
方法返回 Collection
实例的数组。每个实例都有一组特定的方法。
因此,例如,如果您想获取集合名称,您可以这样做:
sess.getSchema('mySchema').getCollections()
.then(collections =>
console.log(collections.map(c => c.getName()))
)
免责声明:我是 mysql X DevAPI Connector for Node.js 的首席开发人员
【讨论】:
这应该可以,谢谢朋友!没想到,昨天才用的。 @ruiquelhas,我是xdevapi的新手,你能帮忙看看***.com/questions/62853011/… @Jeb50 我在那里写了一些想法。以上是关于mysql-xdevapi getCollections 承诺返回值的主要内容,如果未能解决你的问题,请参考以下文章