我正在使用Shopify的BUY SDK创建自定义店面。
import Client from 'shopify-buy'
const client = Client.buildClient({
domain: 'xxxxxxxxxxx.myshopify.com',
storefrontAccessToken: 'xxxxxxxxxxxxxxxxxe6347d45b08'
})
我拿到所有产品都没有问题:
client.product.fetchAll().then((products) => {
// Do something with the products
console.log(products)
})
我也没有通过标签过滤的问题:
let query = {
query: "tag:[aeropress,espresso]"
}
client.product.fetchQuery(query).then((products) => {
console.log(products)
})
并按product_type提取没有问题:
let query = {
query: "product_type: Coffe Beans"
}
client.product.fetchQuery(query).then((products) => {
console.log(products)
})
我遇到问题的地方是使用多个查询进行过滤(在本例中为tag和product_type)。我尝试了几种不同的方法来构造查询无济于事:
let query = {
query: "product_type: Coffe Beans, tag: [aeropress, espresso]"
}
let query = {
query: "{product_type: Coffe Beans, tag: [aeropress, espresso]}"
}
我确定我缺少一些简单的东西(或者可能无法使用多个过滤器进行查询吗?)。其他人使用带有多个过滤器的Shopify Buy SDK是否成功?
作为参考,我正在关注以下文档:
https://shopify.github.io/js-buy-sdk/
https://help.shopify.com/api/storefront-api/reference/object/shop#products
https://github.com/Shopify/js-buy-sdk/blob/master/tutorials/MIGRATION_GUIDE.md
最佳答案
您可以尝试将多个过滤器与AND或OR结合使用,例如以下查询:
let query = {
query: "product_type:'Coffe Beans' AND tag:'aeropress' OR tag:'espresso'"
}
因此,您可以添加具有多个条件的类型的多个项目
它看起来与店面搜索查询类似,如以下链接中所述:
https://help.shopify.com/manual/sell-online/online-store/storefront-search
我已经在shopify-buy v1.0.2上测试了类似的东西,并且工作正常。
希望这会有所帮助。
关于javascript - Shopify Buy SDK-多个过滤器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48246953/