Javascript 从另一个文件请求后未定义module.exports函数
大家好,我是从nodejs开始的,我想我了解module.exports是如何工作的,但是当在另一个文件中使用相同的函数时,在index.js启动文件中需要并使用它之后,我得到的第一个不是函数。我看到了一些类似的答案,但是有更复杂的代码,我没有理解这一点,这就是为什么我在这里问它这么简单。让我更详细地解释一下,如果太简单,我很抱歉 我运行npm start并从index.js文件开始 Index.jsJavascript 从另一个文件请求后未定义module.exports函数,javascript,node.js,Javascript,Node.js,大家好,我是从nodejs开始的,我想我了解module.exports是如何工作的,但是当在另一个文件中使用相同的函数时,在index.js启动文件中需要并使用它之后,我得到的第一个不是函数。我看到了一些类似的答案,但是有更复杂的代码,我没有理解这一点,这就是为什么我在这里问它这么简单。让我更详细地解释一下,如果太简单,我很抱歉 我运行npm start并从index.js文件开始 Index.js const{first}=require(“./first”); 第一个()试试这种方法 i
const{first}=require(“./first”);
第一个()代码>试试这种方法
index.js
first.js
second.js
这对我很有用,你需要在second.js中添加另一个anonnymus函数
.然后((好)=>{
()=>first()}.catch(err=>{console.log(err)})
}
这是您的代码应该喜欢的
function second(){
return new Promise((res,rej)=>{
setTimeout(()=>{res(),1500})})
.then(()=>{()=>first()})
.catch(err=>{console.log(err)})}
错误到底是什么?它被扔到哪里了?欢迎Alex!了解您所遇到的错误会很有帮助。你能把错误作为问题的一部分发布出来吗,这样我们就知道确切的错误,以及它被抛出的位置。信息越多越好。错误被抛出到第二个.js文件的catch中。上面写着:这里出错!!:TypeError:first不是一个函数为什么要执行循环引用?因为我想再次执行第一个函数,直到第二个.js fileNo中的某个条件出现为止。我得到了意外的令牌导出。您所说的导出来自react,对nodejs无效backend@alex很抱歉给您带来不便,我已经编辑了我的代码,请检查我是否根据您的答案使其工作,而不是在second.js中调用first(),它应该是first.first()。请更新它,以便我可以在以后验证它。THnks
const second = require("./second");
module.exports.first=function(){
/* logic or code */
return second.second();
}
const first = require("./first");
module.exports.second=function(){
return new Promise((resolve, reject)=>{
setTimeout(()=>resolve(), 1500)
})
.then(()=> {
first.first()
})
.catch(err => {
// Here's the first is not a function
console.log("Error here!!: ", err)
})
}
function second(){
return new Promise((res,rej)=>{
setTimeout(()=>{res(),1500})})
.then(()=>{()=>first()})
.catch(err=>{console.log(err)})}