如何从打字稿中的其他类导入函数

时间:2019-07-10 08:23:10

标签: typescript

我想将其他类(由名称字符串确定,例如B)导入当前类(名为A)。 B类中的函数需要调用A类中的函数。 我想知道如何实现。

// index.ts

function importAll(obj, src){
    for (var key in src) obj[key] = src[key];
    return obj;
};

 class A{
    function_a(){
        console.log("A_test");
    }

    call_function_b()
    {
        let classtype="./Bclass";
        // dynamicly import class B 
       let B = require(classtype);
       let object_b= new B(); 
       // want to import all function from class B to class A
       // like importAll(this, object_b);

    }
}

export let test =new A();
test.call_function_b();
//file Bclass.ts
export class B{
    function_b() {
        console.log("B_test");
    }

    function_use_a()
    {
        // function in class B need to call function in class A
        this.function_a();
    }
}

1 个答案:

答案 0 :(得分:0)

我认为您正在寻找A extends B

在类声明或类表达式中使用extends关键字创建一个类,该类是另一个类的子类。

class B {
  
  b_func() {
    console.log('b func');
  }
}

class A extends B {
  
  a_func() {
    console.log('a func');
  }
}


const a = new A();
a.b_func();