Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 直接调用类,而不是通过实例变量调用_Javascript_Node.js - Fatal编程技术网

Javascript 直接调用类,而不是通过实例变量调用

Javascript 直接调用类,而不是通过实例变量调用,javascript,node.js,Javascript,Node.js,我在classes.js中创建了以下两个类: 如您所见,我正在通过module.exports导出这两个类 然而,当调用类时,我得到一个错误,当直接调用类时 有没有关于如何直接给班级打电话的建议 谢谢你的回复 如果 module.exports = { Person }; 所以 Person = require('./classes.js').Person; 或者,你可以 module.exports = Person; 及 如果 所以 Person = require('./cl

我在classes.js中创建了以下两个类:

如您所见,我正在通过module.exports导出这两个类

然而,当调用类时,我得到一个错误,当直接调用类时

有没有关于如何直接给班级打电话的建议

谢谢你的回复

如果

module.exports = {
    Person
};
所以

Person = require('./classes.js').Person;
或者,你可以

module.exports = Person;

如果

所以

Person = require('./classes.js').Person;
或者,你可以

module.exports = Person;

在classes.js中,您正在将Person导出为对象属性。所以要让它像你期望的那样工作,你可以

或者直接从classes.js文件中获取类

或者,在我看来,这是一个更好的选择,您可以将人员分离到其自己的文件中,并在默认情况下将其导出

文件./Person.js

然后在主文件中执行以下操作:

const Person = require('./Person');
在classes.js中,您正在将Person导出为对象属性。所以要让它像你期望的那样工作,你可以

或者直接从classes.js文件中获取类

或者,在我看来,这是一个更好的选择,您可以将人员分离到其自己的文件中,并在默认情况下将其导出

文件./Person.js

然后在主文件中执行以下操作:

const Person = require('./Person');

如果您希望将所有类都放在一个名为classes.js的文件中,那么这应该是可行的

// classes.js

class Person {
  // ...
}

class Vehicle {
  // ...
}

module.exports = {
  Person,
  Vehicle
}
虽然为了使事情易于理解,我的建议是将类拆分为多个文件,然后直接从文件中导出每个类

class Person {
  // ...
}

module.exports = Person

如果您希望将所有类都放在一个名为classes.js的文件中,那么这应该是可行的

// classes.js

class Person {
  // ...
}

class Vehicle {
  // ...
}

module.exports = {
  Person,
  Vehicle
}
虽然为了使事情易于理解,我的建议是将类拆分为多个文件,然后直接从文件中导出每个类

class Person {
  // ...
}

module.exports = Person

在本例中,您将导出一个包含Person类的对象

因此,当您像Person=require那样导入时,'/classes.js'

实际上,您正在导入导出的对象。所以,导入后的人与

Person = {
  Person
};
您可以通过将所需的导出对象指定给模块来更改导出。导出方式如下:

module.exports = Person
或者将导入更改为使用“分解结构”指定进行导入,如大括号所示:

const { Person } = require('./classes.js');

在本例中,您将导出一个包含Person类的对象

因此,当您像Person=require那样导入时,'/classes.js'

实际上,您正在导入导出的对象。所以,导入后的人与

Person = {
  Person
};
您可以通过将所需的导出对象指定给模块来更改导出。导出方式如下:

module.exports = Person
或者将导入更改为使用“分解结构”指定进行导入,如大括号所示:

const { Person } = require('./classes.js');

module.exports=个人;如果您有两个类,那么您需要不同的文件或执行类似Person=require'../classes.js'.Person;提示:您正在从文件.module.exports=Person导出对象{Person:Person};如果您有两个类,那么您需要不同的文件或执行类似Person=require'../classes.js'.Person;提示:您正在从文件导出对象{Person:Person}。
const { Person } = require('./classes.js');