给定一个使用Nestjs的MEVN堆栈,MongoDB(mongoose)我正在设置服务器端分页。我的方法是使用mongoose-aggregate-paginate-v2,但我无法从我的研究1中提取出我需要的内容,以便在Nestjs(typescript)和mongoose的框架内完成这项工作。谢谢你的帮助。。
在有关 Nestjs 猫鼬模型和猫鼬聚合分页 v2 设置的文档之后,我有以下内容:
联系人.provider.ts
import mongoose, { Connection, AggregatePaginateResult, model } from "mongoose";
import { ContactSchema } from "./contact.schema";
import aggregatePaginate from "mongoose-aggregate-paginate-v2";
import { IContact } from "./interfaces/contact.interface";
// notice plugin setup:
ContactSchema.plugin(aggregatePaginate);
// is this correct ?
interface ContactModel<T extends Document> extends AggregatePaginateResult<T> {}
// how to create model for factory use ?
export const ContactModel: ContactModel<any> = model<IContact>('Contact', ContactSchema) as ContactModel<IContact>;
export const contactProvider = [
{
provide: 'CONTACT_MODEL',
useFactory: (connection: Connection) => {
// how to instantiate model ?
let model = connection.model<ContactModel<any>>('Contact', ContactSchema);
return model;
},
inject: ['DATABASE_CONNECTION'],
},
];
我在阅读Nestjs文档、mongoose文档和typescript文档之间。沿着这条路径,有一种方法可以在我的Contact模型上提供aggregatePage方法,这样我就可以像这样调用:
contact.service.ts
// Set up the aggregation
const myAggregate = this.contactModel.aggregate(aggregate_options);
const result = await this.contactModel.aggregatePaginate(myAggregate, options); // aggregatePaginate does not exist!
查看正在进行的代码-可在此分支上获得。
研究
NestJs与mongoose-comury-分页-v2和mongoose-分页-v2之间存在冲突,因为这些插件使用的是@类型/mongoose,因此,如果您使用@类型/mongoose,NestJS会发生冲突。
我告诉你这个是因为我正在尝试同样的事情,并弄清楚在 Nestjs 解决 @types/猫鼬问题之前,实现猫鹭-aggreate-paginate-v2 是不可能的。
我可以建议您自己制作一个自定义函数来执行此操作或使用 https://www.npmjs.com/package/mongoose-paginate 因为该插件不需要@types/猫鼬。
我是java中ssl的新手,需要帮助。我的应用程序需要调用支付提供商服务器,使用他们提供的证书和我的公钥。 我的输出:
简介 服务提供器是所有 Laravel 应用程序引导中心。你的应用程序以及 Laravel 的所有核心服务都是通过服务提供器进行引导。 在这里,我们说的「引导」其实是指 注册 ,比如注册服务容器绑定、事件监听器、中间件,甚至是路由的注册。服务提供器是配置你的应用程序的中心。 Laravel 的 config/app.php 文件中有一个 providers 数组。数组中的内容是应用程序要加载的所有
问题内容: 如何使用Go Web服务器提供index.html(或其他静态HTML文件)? 我只想要一个基本的静态HTML文件(例如,一篇文章),就可以从Go Web服务器上提供该文件。HTML应该可以在go程序之外进行修改,就像使用HTML模板时一样。 这是我的Web服务器,仅托管硬编码文本(“ Hello world!”)。 问题答案: 使用Golang net / http包,该任务非常容易
问题内容: 我试图显示一个包含大量元素的表。我想对表进行分页并仅加载当前页面上显示的元素。现在,json加载了。 我在这里读到,最好在json标头中传递分页信息(currentPage,pagesCount和elementsCount)。 我如何从angular访问json头中的那些信息? 这是基本的js结构: 问题答案: 根据AngularJS $ resource文档,应该可以这样做:
nestjs 一个服务如何既做微服务也做http服务器? 比如一个接口既可以做 http 又可以做微服务.不想再写一个专门的http 服务器. 接口是否可以相同?
问题内容: 我正在探索Go的深度,并且我一直在尝试编写一个简单的Web应用程序来围绕所有内容。我正在尝试服务React.js应用程序。 下面是Go服务器的代码。我有默认的服务路线,效果很好。我正在努力允许将静态文件提供给该索引文件。尽管我需要静态提供JavaScript / CSS / Media文件,但我允许React App自己进行客户端路由。 例如,我需要能够将文件提供给React应用程序才