fuse.js return 嵌套的特定项目 json object
fuse.js return specific item from nested json object
我正在使用 fuse.js 模糊搜索 json 数据集,看起来像这样:
const dataSet = [
{
title: "a list",
cards: [
{
title: "a card",
},
{
title: "another card",
},
{
title: "a third card",
},
],
},
...
];
当我搜索卡片标题时:
const fuse = new Fuse(dataSet, { keys: ['cards.title']})
console.log(fuse.search("a third card"))
包含卡片的列表已 returned
{
title: "a list",
cards: [
{id: 1, title: "a card"},
...
]
}
我想要数据到 return 标题为“第三张卡片”的特定卡片。有什么办法可以做到这一点吗?
我查看了文档,发现了一个 getFn
选项可以完成这项工作,但我无法让它工作。我也知道我可以通过展平我的 object 来实现这一点,但我不想这样做,因为它会增加我的用例的复杂性。
听起来您可以将选项 includeMatches
设置为 true
。这也会为您提供在嵌套子数组中匹配的确切项目。
我正在使用 fuse.js 模糊搜索 json 数据集,看起来像这样:
const dataSet = [
{
title: "a list",
cards: [
{
title: "a card",
},
{
title: "another card",
},
{
title: "a third card",
},
],
},
...
];
当我搜索卡片标题时:
const fuse = new Fuse(dataSet, { keys: ['cards.title']})
console.log(fuse.search("a third card"))
包含卡片的列表已 returned
{
title: "a list",
cards: [
{id: 1, title: "a card"},
...
]
}
我想要数据到 return 标题为“第三张卡片”的特定卡片。有什么办法可以做到这一点吗?
我查看了文档,发现了一个 getFn
选项可以完成这项工作,但我无法让它工作。我也知道我可以通过展平我的 object 来实现这一点,但我不想这样做,因为它会增加我的用例的复杂性。
听起来您可以将选项 includeMatches
设置为 true
。这也会为您提供在嵌套子数组中匹配的确切项目。