首页 > 解决方案 > NodeJS 抛出 module_not_found

问题描述

当我使用 require 导入模块时,它会引发 MODULE_NOT_FOUND 错误。(mymain.js)

var counter = require(".\count");
var array=[10,20,30];
console.log(counter(array));

这是我要导入的模块(count.js)

 var counter = function(arr){
    return 'length= '+arr.length;
};
module.exports = counter ;

这两个代码都在同一个目录中。节点 mymain 引发以下错误。

D:\Programming\NodeJS>node mymain
internal/modules/cjs/loader.js:1017
  throw err;
  ^

Error: Cannot find module '.count'
Require stack:
- D:\Programming\NodeJS\mymain.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:1014:15)
    at Function.Module._load (internal/modules/cjs/loader.js:884:27)
    at Module.require (internal/modules/cjs/loader.js:1074:19)
    at require (internal/modules/cjs/helpers.js:72:18)
    at Object.<anonymous> (D:\Programming\NodeJS\mymain.js:1:15)
    at Module._compile (internal/modules/cjs/loader.js:1185:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1205:10)
    at Module.load (internal/modules/cjs/loader.js:1034:32)
    at Function.Module._load (internal/modules/cjs/loader.js:923:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [ 'D:\\Programming\\NodeJS\\mymain.js' ]
}

标签: node.jsmodulerequire

解决方案


您在 require 模块语句中使用了反斜杠,这是行不通的。正确的方法是像这样使用正斜杠:

var counter = require("./count");

反斜杠用作转义字符。


推荐阅读