.sort在带有猫鼬和参数的graphql中

时间:2019-05-01 14:18:35

标签: node.js mongodb mongoose graphql

我正在建立一个带有节点,express和mongoose(当然也是mongoDB)的graphql Server / Api。

当前,我尝试为列表构建模式/解析器,在其中可以按传递过来的参数进行排序-但它不起作用。

工作代码:

helm create my-chart

rootQuery:

type Item {
price: Int!
quantity: Int!
}

解析器:

items: [Item!]!

现在我想传递参数以进行手动排序,我尝试过:

rootQuery:

module.exports = {
    items: async () => {
        try {
            const items = await Item.find()
            .sort({ price: -1})
            return items.map(item => {
                return {
                     ...item._doc,

                };
            })
        } catch (err) {
            throw err;
        }

    },

解析器:

items(category: String, value: Int): [Item!]!

我收到此错误: 无效的排序值:{类别:[object Object]}“,

我想使用查询更改排序方法, 例如

module.exports = {
        items: async (category, value) => {
            try {
                const items = await Item.find()
                .sort({ category: value})
                return items.map(item => {
                    return {
                         ...item._doc,

                    };
                })
            } catch (err) {
                throw err;
            }

        },

谢谢您的帮助!

0 个答案:

没有答案