我正在尝试使用pouchdb.find,但继续收到未知的操作错误。
{"message":"unknown operator \"$or\" - should be one of $eq, $lte, $lt, $gt, $gte, $exists, $ne, $in, $nin, $size, $mod, $regex, $elemMatch, $type or $all"}
我有点失落,因为我读过的所有文件都说是$或者可用。
的package.json:
"pouchdb": "^6.3.4",
"pouchdb-find": "^6.3.4",
JavaScript的:
db.find({
selector: {
type: 'question',
tags: { $or: [ '202', '206' ] }
},
use_index: 'tagSearch',
include_docs: true
}).then()...
我有一种感觉,我错过了一些基本的东西。我正在寻找检索选择器中列出的一个或另一个标签的所有文档。任何帮助/方向将不胜感激。
答案 0 :(得分:0)
我认为您可能需要对其进行重组。
我正在查找AND,并按以下步骤进行设置-
private async void _fileList_ItemClick(object sender, ItemClickEventArgs e)
{
var storageitem = e.ClickedItem as StorageFile;
IRandomAccessStream stream = await
storageitem.OpenAsync(FileAccessMode.Read);
mediaElement.SetSource(stream, storageitem.ContentType);
this.txt_song.Text = "Now playing: " + storageitem.Name;
}
您中的许多人都需要类似的东西(未经测试,不确定语法是否正确。
db.find({
selector: {
$and: [
{ type: { $exists: true } },
{ type: { $eq: "sessions" } },
{ start_date: { $gt: true } },
{ start_date: { $eq: "2018-10-21" } }
]
}
或者,您可以尝试使用IN
db.find({
selector: {
type: 'question',
$or: [
{tags: '202'},
{tags: '206'},
]
}
})
将其中一些内容帮上忙。