【发布时间】:2017-02-02 15:01:53
【问题描述】:
我是 MEAN 的新手,想寻求您的帮助。
由于我在服务器端使用 Mongoose 并且有很多架构,我想在表单输入中重用 Angular2 浏览器端的架构。由于 Mongoose 现在是同构的,我认为它应该是可行的。如果可能的话,我想在客户端使用 Mongoose/Angular2 的模式、文档和验证。我不会从浏览器连接到数据库。
问题1:如何在浏览器端使用Mongoose?
我四处浏览并认为这种方法可能不正确。
- npm install mongoose --save
- typings install --global --save dt~mongoose(还有 mpromise、mongoose-promise、mongodb、node)
- 在 app.module.ts 上,将 * 作为 mongoose 从 'mongoose' 导入;
- 将那些 ....\typings\globals* 复制到 ....\node_modules(不确定我是否需要此步骤,但只需尝试一下)
当我执行“ng s”时,我得到了这些错误。
问题 2:如何解决以下这些错误?我还尝试了 npm install --save 事件、npm install --save 流并输入它们。
[默认] D:\MEAN\projects\fhir\fhirapp\node_modules\mongodb\index.d.ts:4:29 中的错误 找不到模块“事件”。
[默认] D:\MEAN\projects\fhir\fhirapp\node_modules\mongodb\index.d.ts:102:18 中的错误 找不到名称“缓冲区”。
[默认] D:\MEAN\projects\fhir\fhirapp\node_modules\mongodb\index.d.ts:1127:44 中的错误 找不到命名空间“NodeJS”。
[默认] D:\MEAN\projects\fhir\fhirapp\node_modules\mongoose\index.d.ts:6:26 中的错误 找不到模块“流”。
[默认] D:\MEAN\projects\fhir\fhirapp\node_modules\mongoose\index.d.ts:13:29 中的错误 找不到名称“全球”。
我的打字.json
{
"globalDependencies": {
"mongodb": "registry:dt/mongodb#2.1.0+20160602142941",
"mongoose": "registry:dt/mongoose#4.5.9+20160922172925",
"mongoose-promise": "registry:dt/mongoose-promise#4.5.4+20160822161941",
"mpromise": "registry:dt/mpromise#0.5.4+20160316155526",
"node": "registry:dt/node#6.0.0+20160923124626"
}
}
非常感谢您的帮助。 提前致谢。
【问题讨论】:
-
您不需要将任何内容从
typings文件夹复制到node_modules。 -
您好,WiredPrairie,谢谢您的确认。我正在考虑将相应的 index.d.ts 复制到每个 node_modules/module_name。
标签: angular mongoose typescript-typings