我是nodejs的新手。我有以下文件和代码:
// file: myfunc.js
function myfunc() { return "myfunc()"; }
exports = myfunc;
和
// file: index.js
var mf = require("./myfunc");
var mfunc = mf();
console.log(mfunc);
当我从命令行运行时node index.js
,出现错误
var mfunc = mf()
^
TypeError: Object is not a function
为什么会出现此错误?我看到了粘贴在下面的其他人的代码,我尝试遵循相同的方法来尝试require()
返回一个函数而不是一个对象。
// file: index.js from another app
var express = require('express');
var app = express();
为什么会require('express')
返回函数却require('./myfunc')
不能返回函数?
它应该是...
module.exports = myfunc;
... 反而。引用文档:
如果您希望模块导出的根是一个函数(例如构造函数),或者想一次导出一个完整的对象而不是一次构建一个对象,则将其分配给
module.exports
而不是exports
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句