Tôi có lớp trừu tượng Model
với thuộc tính tĩnh và một lớp chung khác Controller<T extends Model>
. Tôi muốn truy cập thuộc tính tĩnh của Model trong một thể hiện của Controller. Điều đó sẽ như thế này:Loại truy cập thuộc tính tĩnh của loại chung
abstract class Model{
static hasStatus: boolean = false;
}
class MyModel extends Model{
static hasStatus = true;
}
class Controller<T extends Model>{
constructor(){
if(T.hasStatus)...
}
}
Nhưng TS nói 'T' only refers to a type, but is being used as a value here.
Có một cách dễ dàng để đạt được điều này? Hoặc tôi có nên phân loại Controller
cho mỗi Di sản Model
và triển khai phương pháp để truy xuất giá trị không?
Làm cách nào để 'T' bị ràng buộc khi tạo' Bộ điều khiển'? –