我在将PouchDB身份验证库(https://github.com/nolanlawson/pouchdb-authentication)导入Angular2 Cli Typescript项目时遇到问题。

我已将此添加到我的输入中:

declare module "pouchdb-authentication" {}


我的system-config.ts文件包含在map中:

'pouchdb-authentication': 'vendor/pouchdb-authentication/dist/',


并在packages中:

"pouchdb-authentication": {
  main: "pouchdb.authentication.js",
  defaultExtension: "js"
},


我试图像这样使用它:

PouchDB.plugin(require('pouchdb-authentication'));


我也尝试过:

import * as PouchDBAuthentication from 'pouchdb-authentication';


目前,我在控制台中收到此错误:


  zone.js:461:未处理的承诺拒绝:(SystemJS)TypeError:AMD模块http://localhost:4200/vendor/pouchdb-authentication/dist/pouchdb.authentication.js未定义


任何想法将不胜感激!谢谢!

最佳答案

您确定要插入dist/pouchdb.authentication.js而不是使用CommonJS包吗? dist/包含UMD软件包,在这种情况下,SystemJS似乎试图将其加载为AMD。

编辑:没关系,我看到我忘了将其构建为UMD。我会修复该问题,然后您应该可以使用dist/了(尽管再次,我不认为您需要使用,因为SystemJS应该可以使用CommonJS了)。

在这里打开了一个问题:https://github.com/nolanlawson/pouchdb-authentication/issues/103

编辑:已在pouchdb-authentication 0.5.2中修复,请重试

07-24 09:46
查看更多