微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

检查何时使用所需文件中的函数

如何解决检查何时使用所需文件中的函数

我在 node 中使用了一个带有几个函数的 js 文件效果很好。但是其中一个函数需要触发我主js文件中的一个函数,我不知道如何解决这个问题。

所以我有我的 main.js

const externalObject = require('objectJS');
let myfunctions = require('./stuff/myFunctions.js');

myFunctions.doSomething();

和 myFunctions.js

module.exports =  {
    doSomething: function() {
        doSomethingElse();
        return data;
    }
}

function doSomethingElse() {
    //do some stuff
    if (a) {
        return something;
    } else {
        externalObject.action()
       //or
       //inform main.js to do something with externalObject
   }
}

我的问题是我不知道如何访问 myFunctions.js 中的外部对象(我不能在那里要求它),或者如何通知我的 main.js 这个对象需要更新。

对此有什么建议吗?

解决方法

将函数 externalObject.action 本身作为参数传递给 doSomethingElse

const externalObject = require('objectJS');
let myfunctions = require('./stuff/myFunctions.js');

myFunctions.doSomething(externalObject.action);

模块需要相应地处理 callback 参数:

module.exports =  {
    doSomething: function(callback) {
        doSomethingElse(callback);
        return data;
    }
}

function doSomethingElse(callback) {
    //do some stuff
    if (a) {
        return something;
    } else {
        callback()
       //or
       //inform main.js to do something with externalObject
   }
}

通过这样做,externalObject.action 会从模块内部调用,您可以根据需要从 externalObject 内部更新 externalObject.action

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。