Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.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 在Node.js中包含外部文件中的es6类_Javascript_Node.js - Fatal编程技术网

Javascript 在Node.js中包含外部文件中的es6类

Javascript 在Node.js中包含外部文件中的es6类,javascript,node.js,Javascript,Node.js,假设我有一个文件class.js: class myClass { constructor(arg){ console.log(arg); } } 我想在另一个文件中使用myClass类。我该怎么做? 我试过: var myClass=require('./class.js') 但它不起作用。 我已经查看了模块.exports,但没有找到一个适用于es6类的示例。也没有 module.exports = class MyClass { constructor(a

假设我有一个文件
class.js

class myClass {
   constructor(arg){
      console.log(arg);
   }
}
我想在另一个文件中使用
myClass
类。我该怎么做?
我试过:
var myClass=require('./class.js')
但它不起作用。
我已经查看了
模块.exports
,但没有找到一个适用于es6类的示例。

也没有

module.exports = class MyClass {
    constructor(arg){
        console.log(arg);
    }
};
进口

var a = require("./class.js");
new a("fooBar");

或者使用新的语法(可能要求您首先对代码进行babelify)

进口

import {myClass} from "./class.js";
其他文件:

import myClass from './myFile';

这对我不管用。我怀疑我的node版本已经过时。@BaldBantha这是因为这是新的ES6语法,您需要使用babel将ES6传输到ES5,以便node可以运行它。Node不支持导入
/
导出
,而且永远不会(至少在不久的将来)请不要只发布代码作为答案,还要解释代码的作用以及它如何解决问题。带有解释的答案通常更有帮助,质量更好,更容易吸引选票
export default class myClass {
   constructor(arg){
      console.log(arg);
   }
}
import myClass from './myFile';
export class MyClass
{
   constructor(arg){
    this.arg = arg;
}
}

import {MyClass} From'./MyClass.js'

class OtherClass{
 arg_two;

}

import {OtherClass} From'./OtherClass.js'

class1 = new OtherClass();
class1.arg_two.arg = 'class';

console.log(class1.arg_two.arg);