Tìm hiểu namspace, mở rộng namspace (ok)
Last updated
Was this helpful?
Last updated
Was this helpful?
Nếu bạn dùng namespace trong một file có khai báo import hoặc export ở cấp cao nhất, file đó sẽ trở thành một module, và namespace sẽ không còn thuộc phạm vi toàn cục nữa. Trong trường hợp này, bạn cần export namespace để sử dụng nó ở nơi khác.
ts-node
không hỗ trợ trực tiếp/// <reference path="..." />
, nên bạn phải biên dịch bằngtsc
trước khi chạy bằngnode
. xem Example 2.2Dùng Cách 1 (
export/import
) nếu bạn muốn code dễ chạy trực tiếp bằngts-node
.Dùng Cách 2 (
/// <reference path="..." />
) nếu bạn muốn code theo kiểu namespace truyền thống mà không dùng module.Dùng Cách 3 Cấu hình tsconfig.json để không dùng
reference nữa một câu hỏi đặt ra liệu khi khia báo bằng tsconfig.json rồi liệu có chạy được trược tiếp ts-node không? câu trả lời là không nhé bắt buộc phải biên dịch bằng tsc rồi sau đó chạy node đó là hạn chế của ts-node
Trong TypeScript, bạn có thể mở rộng một namespace (không gian tên) bằng cách khai báo lại namespace đó và thêm các thành phần mới vào nó. Dưới đây là một ví dụ cụ thể:
namespaceA.ts
namespaceB.ts
main3.ts
tsconfig.json
namespaceA.ts
namespaceB.ts
main3.ts
Đọc thêm giải thích ở mục con sẽ giải thích sử dụng include, exclude, files
namespace1.ts
namespace2.ts
shared1.ts
main1.ts
tsconfig.json không cần dùng "include": ["*.ts"]
Đây có lẽ là ví dụ đúng nhất, khi chạy trực tiếp ts-node main3.ts nó báo lỗi như này không biết có phải do cấu hình file tsconfig.json sai không? hay cần khai báo thêm d.ts nữa