NodeJS 中的require和module.exports是否可用于获取驻留在目录中而不是单个JavaScript文件中的所有JavaScript文件中的所有函数?
如果是这样?
有人可以用 示例 解释一下吗?
答案 0 :(得分:1)
如果require为目录路径,它将在该目录中查找index.js文件。所以将模块特定的js文件放在一个目录中,创建一个index.js文件&最后要求你工作的js文件中的目录应该这样做。希望以下示例有助于......
示例:
file:modules / moduleA.js
function A (msg) {
this.message = msg;
}
module.exports = A;
file:modules / moduleB.js
function B (num) {
this.number = num;
}
module.exports = B;
file:modules / index.js
module.exports.A = require("./moduleA.js");
module.exports.B = require("./moduleB.js");
file:test.js
var modules = require("./modules");
var myMsg = new modules.A("hello");
var myNum = new modules.B("000");
console.log(myMsg.message);
console.log(myNum.number);
答案 1 :(得分:0)
使用require 您需要该文件中的模块,您可以使用该原型的所有功能(单个文件)而不是完整的目录。 e.g
function admin(admin_id)
{
//console.log(parent_id);
this.admin_id = admin_id;
}
//default constructor
function admin()
{
admin_id = null;
self =this;
}
//destructor
~function admin(){
this.admin_id = null;
console.log('admin obj destroyed!');
}
//exporting this class to access anywhere through data encapstulation
module.exports = admin;
//class methods
admin.prototype = {
help:function(params){
console.log('hi');
}
},
您可以要求此模块并可以使用功能帮助 通过这种方法,您可以在单个文件中要求所有文件(模块)
答案 2 :(得分:0)
Wiki:“Node.js是一个开源的,跨平台的运行时环境,用于开发服务器端Web应用程序。
虽然Node.js不是JavaScript框架,但它的许多基本模块都是用JavaScript编写的,开发人员可以用JavaScript编写新模块。
运行时环境使用Google的V8 JavaScript引擎解释JavaScript。“
Nodejs示例:
你有Afile.js
var Afile = function()
{
};
Afile.prototype.functionA = function()
{
return 'this is Afile';
}
module.exports = Afile;
和Bfile.js
var Bfile = function()
{
};
Bfile.prototype.functionB = function()
{
return 'this is Bfile';
}
module.exports = Bfile;
Test.js文件需要Afile.js和Bfile.js
var Afile = require(__dirname + '/Afile.js');
var Bfile = require(__dirname + '/Bfile.js');
var Test = function()
{
};
Test.prototype.start = function()
{
var Afile = new Afile();
var Bfile = new Bfile();
Afile.functionA();
Bfile.functionB();
}
var test = Test;
test.start();