Angular2 – 没有查找特定模块的’node_modules’

我正在尝试为Google,Twitter等实施Firebase的授权.

按照this指南,显示我调用以下命令

npm install angularfire2 firebase --save
npm install @types/firebase`

并将其添加到tsconfig.json

"typeRoots": [
      "../node_modules/@types"
    ],
    "types": [
      "jasmine",
      "firebase",
      "node"
    ]

现在我遇到的问题是当我尝试从angularfire2模块导入类/模块时,我的浏览器在localhost:3000 / angularfire2上返回404,而所有其他node_modules都是从localhost成功检索的:3000 / node_modules / …我怎么能确保我的应用程序查看此特定呼叫的node_modules?

(遵循上面指南中的每条指令 – 所有代码都完全相同,如果需要,我可以从我自己的代码或文件树中提供它,如果需要的话).

最佳答案 您还应该让systemjs了解模块.

转到systemjs配置并在其中添加库的映射.查看systemjs documentation以获取更多信息.

就像是:

...
var map = {
  ...
  'angularfire2': 'node_modules/angularfire2',
  'firebase ': 'node_modules/firebase',
  ...    
};
...
...
var packages = {
  ...
  'angularfire2': { main: 'index.js', defaultExtension: 'js' },
  ...
};
...

检查路径是node_modules中的正确路径.

点赞