在另一个文件中创建类的实例,而无需创建新变量

问题描述 投票:0回答:2

我有一个包含此文件的文件:

// filename "Test1"
module.exports = class Test {
    constructor() {
        console.log('Instancied !');
    }
}

我还有另一个包含此文件的文件

// filename "Test2"
const Test = require('./Test1');

const testInstance = new Test();

是否有一种方法可以简化此过程,以在与需求相同的行中创建类?这是行不通的,但我认为它可以像这样:const testInstance = new (require('./Test1'));

javascript class syntax require
2个回答
2
投票

require('./Test1')返回类的定义。因此,您有一个正确的主意,只是缺少一对()

const testInstance = new (require('./Test1'))();

0
投票

这是我能想到的最好的:

// Test1
class Test {
    constructor() {
        console.log('Instancied !');
    }
}

module.exports = () => new Test();

// Test2
const testInstance = require('./Test1')();

这能解决您的问题吗?

© www.soinside.com 2019 - 2024. All rights reserved.