Using functions inside scripts required by NodeJS's requ

Using functions inside scripts required by NodeJS's required()

本文关键字:requ NodeJS by functions inside scripts required Using      更新时间:2023-09-26

如何使用Node的require()函数访问"包含"的脚本中的函数?

--main-js.js--

var webnotis = require('./modules/web-notification.js')

--web-notification.js--

function getURL(host, path) {
...
}

此外,我将如何在其他必需的脚本中使用此函数?


--report-tables.js--

var cltvOut;
exports.cltv = function cltv(getURL)
{
  clearTimeout(cltvOut);
  cltvOut = setTimeout(function(){
    if(exports.getURL('192.168.0.15', '/IMS4/Reports/calculateCLTV'))
    {
      cltv();
    } else {
      console.log('CLTV error.')
    }
  }, 2000);
}

webnotis2 = require('./web-notification.js')
var cltvOut;
exports.cltv = function cltv()
{
  clearTimeout(cltvOut);
  cltvOut = setTimeout(function(){
    if(webnotis2.getUrl('192.168.0.15', '/IMS4/Reports/calculateCLTV'))
    {
      cltv();
    } else {
      console.log('CLTV error.')
    }
  }, 2000);
}

如果它不是module.exports的一部分,则不能。例如:

web通知.js

function getURL(host, path) {
...
}
module.exports = exports = {
    getURL: getURL
};

main js.js

var webnotis = require('./modules/web-notification.js');
webnotis.getURL(...);

这叫做导出模块。

这里的样品:

创建一个文件/utils.js,并定义merge()函数,如下所示。。

  function merge(obj, other) {
      //...
  };
  exports.merge = merge;

现在,合并函数可以访问utils中的另一个JS,如下所示:

var utils = require('./utils');
utils.merge();
   var webnotis = require('./modules/web-notification.js')
      var host='urhost';
      var path='urpath'; 
      webnotis.getURL(host,path,function(err,res){
         if(!err){
               console.log('url is '+res);
            }
      });

web-notification.js

     exports.getURL=function(host, path,cb) {
            var url=host+path;
             cb(null,url);
     }