我有这2个文件:
const Request = require('request');
const YVideo = require('./classes/YVideo');
const yvideo = new YTVideo();
class YVideo {
constructor(uuid){
this.uuid = uuid;
this.url = 'https://example.com/get_video_info?uuid=';
Request.get(this.url+this.uuid, function(err, resp, body){
this.data = body.split('&');
});
console.log(this.data);
}
}
exports = module.exports = YTVideo;
代码将一直运行到“ Request.get(...)”。控制台显示此错误:
“ ReferenceError:请求未定义”。
现在,我是Node.js的新手,所以我想问的是:我应该在使用它的所有.js上每次都要求相同的模块,还是可以对整个应用程序一次使用它? >
答案 0 :(得分:0)
在您需要它的所有文件中都必须有它。因此,将其添加到需要的YVideo文件中。
const Request = require('request');
class YVideo {
constructor(uuid){
this.uuid = uuid;
this.url = 'https://example.com/get_video_info?uuid=';
Request.get(this.url+this.uuid, function(err, resp, body){
this.data = body.split('&');
});
console.log(this.data);
}
}
exports = module.exports = YTVideo;
答案 1 :(得分:0)
问题:在使用它的所有.js中,我是否每次都需要相同的模块 还是有一种方法可以对整个应用程序要求一次?
require
在本地加载每个模块,因此您将必须在需要该模块的每个require
文件中使用.js
。
来自https://www.w3resource.com/node.js/nodejs-global-object.php
require()函数是一个内置函数,用于包含 存在于单独文件中的其他模块,该字符串指定 加载模块。它接受一个参数。这不是全球性的,但 而不是每个模块本地的。