需要来自Node.js应用程序的CoffeeScript无法找到模块错误

时间:2015-02-10 19:30:05

标签: node.js coffeescript

我尝试从Node.js应用程序中获取CoffeeScript文件,但Node.js提供错误Error: Cannot find module 'something'。这样做的正确方法是什么?如果我事先编译CoffeeScript代码,它可以工作,但我不想这样做。

test.js:

require('coffee-script').register();

require('something');

something.coffee:

console.log('Hello World!');

控制台输出:

> node test.js

module.js:340
    throw err;
          ^
Error: Cannot find module 'something'
  at Function.Module._resolveFilename (module.js:338:15)
  at Function.Module._load (module.js:280:25)
  at Module.require (module.js:364:17)
  at require (module.js:380:17)
  at Object.<anonymous> (C:\Users\Sami\Desktop\smallscale\test.js:3:1)
  at Module._compile (module.js:456:26)
  at Object.Module._extensions..js (module.js:474:10)
  at Module.load (module.js:356:32)
  at Function.Module._load (module.js:312:12)
  at Function.Module.runMain (module.js:497:10)
  at startup (node.js:119:16)
  at node.js:906:3

1 个答案:

答案 0 :(得分:2)

您似乎正在尝试require()使用require()模块结构的文件。

如果你require()没有给require()一个文件路径(绝对或相对),Node.js将在/node_modules目录中查找你的模块。您可以阅读文档here

尝试将您的模块作为JavaScript文件,如下所示:

require('./something')

(并确保'./something'是您需要模块到应用程序结构中模块所在位置的路径,或使用绝对路径。