Tạo lớp cơ sở Component đại diện cho một thành phần giao diện trong TypeScript.
Tạo một hệ thống component trong TypeScript là một cách tuyệt vời để quản lý giao diện người dùng và tái sử dụng code một cách hiệu quả. Trong bài tập này hãy cùng mình bắt đầu tìm hiểu lớp cơ sở Component, sau đó tạo các lớp con như Button, Input, và Dropdown kế thừa từ Component.
Định nghĩa lớp cơ sở Component
class Component {
constructor(public name: string) {}
render(): void {
console.log(`Rendering ${this.name} component.`);
}
// Các phương thức khác để điều khiển thành phần giao diện
}
class Button extends Component {
constructor() {
super("Button");
}
click(): void {
console.log("Button clicked.");
}
}
class Input extends Component {
constructor() {
super("Input");
}
typeText(text: string): void {
console.log(`Typing "${text}" into Input.`);
}
}
class Dropdown extends Component {
constructor() {
super("Dropdown");
}
selectOption(option: string): void {
console.log(`Selecting "${option}" in Dropdown.`);
}
}
// Sử dụng các lớp đã định nghĩa
const button = new Button();
button.render();
button.click();
const input = new Input();
input.render();
input.typeText("Hello!");
const dropdown = new Dropdown();
dropdown.render();
dropdown.selectOption("Option 1");
class Component { ... }:Định nghĩa lớp cơ sởComponentvới thuộc tínhnamevà phương thứcrender()để mô phỏng quá trình hiển thị.- Các lớp con
Button,Input, vàDropdownkế thừa từComponent, mỗi lớp con có các thuộc tính và phương thức riêng, phù hợp với loại thành phần giao diện tương ứng. - Trong hàm
constructorcủa mỗi lớp con, chúng ta gọisuper()để gọi hàmconstructorcủa lớp cha (Component), truyền vào thông tin cần thiết cho name. - Mỗi lớp con cũng có các phương thức riêng biệt, như
click()choButton,typeText()choInput, vàselectOption()choDropdown.
Kết quả
Khi chạy đoạn mã trên, mình sẽ nhận được kết quả sau:
Rendering Button component. Button clicked. Rendering Input component. Typing "Hello!" into Input. Rendering Dropdown component. Selecting "Option 1" in Dropdown.
Việc sử dụng kế thừa giúp chúng ta xây dựng một hệ thống component linh hoạt và dễ dàng mở rộng. Mỗi lớp con có thể có các đặc điểm và hành vi riêng, đồng thời vẫn kế thừa các phương thức và thuộc tính từ lớp cơ sở Component. Điều này giúp tạo ra một cấu trúc giao diện linh hoạt và dễ quản lý.
Bài giải
-------------------- ######## --------------------
Câu hỏi thường gặp liên quan:
- Tạo quản lý nhân viên với TypeScript
- Tạo hệ thống quản lý học viên với TypeScript
- Tạo lớp Animal với các thuộc tính và phương thức chung cho động vật với TypeScript.
- Tạo lớp cơ sở Component đại diện cho một thành phần giao diện trong TypeScript.
- Tạo quản lý xe với TypeScript
- Tạo lớp hình học với TypeScript
- Xây dựng hệ thống ngân hàng trong Typescript

Các hàm xử lý chuỗi trong Javascript (cắt / tách / nối chuỗi ..)
Chia lấy phần dư / chia lấy phần nguyên trong javascript
Các cách khai báo biến trong Javascript
Các sự kiện (Event) trong Javascript
Hướng tạo thanh search bar bằng CSS
Hàm array.slice() trong Javascript
Tính tổng hai số bằng Javascript (cộng hai số)
Cách khai báo biến trong PHP, các loại biến thường gặp
Download và cài đặt Vertrigo Server
Thẻ li trong HTML
Thẻ article trong HTML5
Cấu trúc HTML5: Cách tạo template HTML5 đầu tiên
Cách dùng thẻ img trong HTML và các thuộc tính của img
Thẻ a trong HTML và các thuộc tính của thẻ a thường dùng