【发布时间】:2015-12-03 10:54:44
【问题描述】:
我正在完成 AngularJS 应用程序的基本设置(刚刚开始),目前正在尝试为该应用程序安装 Bower 组件。
当我从终端运行bower install 时,我收到以下错误:
Error: Cannot find module 'js-yaml'
at Function.Module._resolveFilename (module.js:337:15)
at Function.Module._load (module.js:287:25)
at Module.require (module.js:366:17)
at require (module.js:385:17)
at Object.<anonymous> (Path\bower\node_modules\configstore\index.js:9:12)
at Module._compile (module.js:425:26)
at Object.Module._extensions..js (module.js:432:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:311:12)
at Module.require (module.js:366:17)
at require (module.js:385:17)
我没有在我的脚本中的任何地方指定js-yaml 模块(据我所知),所以不确定这个依赖来自哪里。
我尝试删除 node_modules 文件夹,清除 npm 缓存,包括 package.json 文件中的 js-yaml 然后重新运行 npm install,但运行 bower install 时出现相同的错误
如果有帮助,我的bower.json 和package.json 文件如下所示:
Bower.json
{
"name": "starter-node-angular",
"version": "1.0.0",
"dependencies": {
"bootstrap": "latest",
"font-awesome": "latest",
"animate.css": "latest",
"angular": "latest",
"angular-route": "latest"
}
}
package.json
{
"name": "starter-node-angular",
"main": "server.js",
"dependencies": {
"express" : "~4.5.1",
"mongoose" : "~3.8.0",
"body-parser" : "~1.4.2",
"method-override" : "~2.0.2",
"js-yaml" : "latest"
}
}
我使用的是WebStorm 10.0.4(以空项目为起点)。
有没有人遇到过这个或类似的问题,并可能为我指出如何解决问题的正确方向?
【问题讨论】:
-
修改
package.json文件,使其看起来像this,然后执行npm install。完成后,执行bower install -
嗨卢西奥,感谢您的反馈。我将尝试今天晚些时候提供的解决方案。同时,您能否解释一下 "js-yaml" : "latest" 与 "js-yaml" : "*" 的区别?只是要了解其中的区别。
-
我在 npm 文档中看不到使用
latest获取最新版本的软件包,*用于此目的。这样做可能会安装软件包,从而解决您的问题。
标签: angularjs node.js npm bower bower-install