• 使用分页

    使用分页

    大多数情况下,在开发应用程序时,你可能需要分页功能。如果你的应用程序中有分页,page slider 或无限滚动组件,则使用此选项。

    1. const users = await getRepository(User)
    2. .createQueryBuilder("user")
    3. .leftJoinAndSelect("user.photos", "photo")
    4. .take(10)
    5. .getMany();

    将会返回前 10 个 user 的 photos。

    1. const users = await getRepository(User)
    2. .createQueryBuilder("user")
    3. .leftJoinAndSelect("user.photos", "photo")
    4. .skip(10)
    5. .getMany();

    将返回除了前 10 个 user 以外的所有 user 的 photos。

    你可以组合这些方法:

    1. const users = await getRepository(User)
    2. .createQueryBuilder("user")
    3. .leftJoinAndSelect("user.photos", "photo")
    4. .skip(5)
    5. .take(10)
    6. .getMany();

    这将跳过前 5 个 users,并获取他们之后的 10 个 user。

    takeskip可能看起来像我们正在使用limitoffset,但它们不是。一旦你有更复杂的连接或子查询查询,limitoffset可能无法正常工作。使用takeskip可以防止这些问题。