将字符串传递给抽象类的构造函数

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

我正在寻找一种在类内设置名称字符串并在构造函数级别的抽象类中使用它的方法,这意味着不在函数内使用。因为使用typedi,所以无法打开构造函数。

Here's the playground link.

未捕获的TypeError:this.name不是函数

abstract class Root {
    abstract name(): string
    notFoundError = new Error(`${this.name()} not found`)

}

class Use extends Root {
    name = () => 'User'
}

const x = new Use()
throw x.notFoundError

我不是想要这个:

abstract class Root {
    abstract name: string
    notFoundError = () => new Error(`${this.name} not found`)

}

class Use extends Root {
    name = 'User'
}

const x = new Use()
throw x.notFoundError()

notFoundError感兴趣不是功能。

我正在寻找一种在类内设置名称字符串并在构造函数级别的抽象类中使用它的方法,这意味着不在函数内使用。我无法打开构造函数,因为我正在使用...

typescript class abstract-class es6-class
1个回答
0
投票

一个想法:


0
投票

而不是name = 'User'name = () => 'User'使用name() { return 'User' }

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