NodeJs : TypeError: require(…) is not a function
我试图要求一个文件,然后将其传递给var。 我正在按照本教程创建身份验证系统。 编写server.js文件并尝试编译后,出现bson错误,因此我更改了需要它的发行版本的猫鼬代码。
这是我的代码和错误:
server.js
1 | require('./app/routes')(app, passport); |
错误
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | require('./app/routes')(app, passport); ^ TypeError: require(...) is not a function at Object. (d:\ ode JS learning\\WorkWarV2\\server.js:38:24) at Module._compile (module.js:434:26) at Object.Module._extensions..js (module.js:452:10) at Module.load (module.js:355:32) at Function.Module._load (module.js:310:12) at Function.Module.runMain (module.js:475:10) at startup (node.js:117:18) at node.js:951:3 Process finished with exit code 1 |
我已经读到这通常意味着requireJS无法正确加载,但我不知道为什么或如何修复它。
根据评论进行编辑:
根据要求,这是
我认为这意味着未将
如果您想让我们进一步评论,请显示给我们
它看起来应该像这样;
1 2 3 | module.exports = function(app, passport) { // code here } |
您正在导出一个可以像
可能发生类似错误的另一个原因是,如果您具有循环模块依赖关系,其中模块A尝试
对我来说,当我执行立即调用函数时,需要将
错误:
1 2 3 4 5 | const fs = require('fs') (() => { console.log('wow') })() |
好:
1 2 3 4 5 | const fs = require('fs'); (() => { console.log('wow') })() |
对我来说,这是循环依赖的问题。
IOW,模块A必需的模块B和模块B必需的模块A。
因此,在模块B中,
如何处理Node.js中的循环依赖关系
对我来说,在分支之间切换时遇到类似的错误-一个使用较新版本的
只需在需要文件的地方包裹箭头功能
记住要导出您的
在
1 2 3 4 5 | exports = function(app, passport) { /* write here your code */ } |