Npm安装成功但nodejs无法找到模块'db'

时间:2014-06-06 15:12:50

标签: node.js

这个错误是如此常见但是虽然我搜索了很多类似的问题,但我找不到解决问题的方法。我使用" npm install db"。

安装模块没有问题

" server.js"与" node_moludes"位于同一文件夹中和NPM创建了一个" db"文件夹里面" node_moludes"包含所有内容。

所有NPM命令都返回成功(安装,链接,列表等),我甚至将模块添加到我的" package.json"它也可以安装,只需使用" npm install -d"。

尽管如此,当我运行服务器时,Nodejs无法找到' db'模块...任何帮助?

nodejs版本:0.10.26

npm版本:1.4.3

server.js

var http = require('http'),
    url = require('url'),
    db = require('db');

var send = function(response, data){
  response.writeHead(200, {
    'Content-Type': 'text/plain',
    'Access-Control-Allow-Origin': '*'
  });
  response.end(JSON.stringify({data: data}));
};

http.createServer(function (request, response) {
  var query = url.parse(request.url, true).query;
  if(query.set) {
    db.set(query.set, query.val || '');
    send(response, true);
  } else if (query.get) {
    db.get(query.get, function(data){
      send(response, data);
    });
  } else send(response, query);
}).listen(80);

的package.json

{
  "name": "xxxxx",
  "version": "0.0.1",
  "author": "rafaelcastrocouto",
  "repository": "git://github.com/rafaelcastrocouto/xxxxx",
  "dependencies": {
    "db": ">= 1.00.x"
  },
  "engine": "node >= 0.10.x"
}

1 个答案:

答案 0 :(得分:3)

db module的设置似乎没有关注some Node.js norms。它不包含index.*文件,或在"main"中指定package.json设置以指示其他节点。

您应该能够直接引用包中的主文件:

var db = require('db/db');