0

我的反应管理分页有问题。我正在我的后台执行此操作,以批准我的商家的产品。

这就是我的前端的样子

const PostPagination = props => <Pagination rowsPerPageOptions={[10, 25, 50, 100, 500]} {...props} />;

return (
    <List
        {...props}
        bulkActionButtons={<PostListBulkActions />}
        filters={<PostFilter />}
        sort={{ field: 'createdDate', order: 'DESC' }}
        exporter={exporter}
        pagination={<PostPagination/>}
    >
            <Datagrid rowClick={rowClick} expand={PostPanel} optimized>
                {/* <TextField source="_id" /> */}
                <TextField source="name" cellClassName={classes.title} />
                <TextField source="description" />
                <TextField source="category" />
                <TextField source="shop" />
                <TextField source="shopInspiration" />
                <TextField source="price" />
                <TextField source="quantity" />
                <DateField
                    source="createdAt"
                    sortByOrder="DESC"
                    cellClassName={classes.createdDate}
                />
                <BooleanField source="isArchived"/>
                <BooleanField source="isApproved" onClick={()=> {}}/>
                </Datagrid>
        </List>
    );

然后在我的后端

    exports.listApproval = (req, res) => {
    let order = req.query.order ? req.query.order : -1;
    let sortBy = req.query.sortBy ? req.query.sortBy : "createdAt";
    let limit = req.query._end ? parseInt(req.query._end) : 20; 
   // let limit = req.query.limit ? parseInt(req.query.limit) : 0; 

    Product.find()
        .select("-photo")
        .populate("category")
        .populate("shop")
        .sort([[sortBy, order]])
        .limit(limit)
        .exec((err, products) => {
            if (err) {
                return res.status(400).json({
                    error: "Products not found."
                });
            }
            res.set('x-total-count', products.length)
            console.log(products.length);
            res.json(products.map((p) => {

                try {
                    let {name, sold, description, price, quantity, createdAt, updatedAt, images, status, isApproved, category, isArchived, shop, imagePrimary } = p._doc;
                    return({"id": p._id, name, sold, description, price, quantity, createdAt, images, updatedAt, "category": category.name, "shop": shop.name, isApproved, status, isArchived, imagePrimary, "shopInspiration": (shop.inspiration=!''||shop.inspiration)});
                  }
                  catch (e) {
                    return({});
                  }
             }));
        });
};

当我将变量更改limit为 req.query.limit 时。它加载所有产品并且分页不起作用。但是当我将其更改为 req.query._end 时。NEXT and PREVIOUS它工作正常,但缺少导航。

见下图。

在此处输入图像描述

4

0 回答 0