Tôi có một ứng dụng Node.js rằng gắn một số thông tin cấu hình cho global
đối tượng:Mở rộng đối tượng nguyên cảo toàn cầu trong Node.js
global.myConfig = {
a: 1,
b: 2
}
Trình biên dịch nguyên cảo không thích điều này vì kiểu Global
không có đối tượng có tên myConfig
:
TS2339: Thuộc tính 'myConfig' không tồn tại trên loại 'Toàn cầu'.
tôi không muốn làm điều này:
global['myConfig'] = { ... }
Làm thế nào để mở rộng hoặc loại Global
chứa myConfig
hoặc chỉ nói typescript để im lặng và tin tưởng tôi? Tôi thích cái đầu tiên.
Tôi không muốn thay đổi các khai báo bên trong node.d.ts
. Tôi thấy điều này SO post và cố này:
declare module NodeJS {
interface Global {
myConfig: any
}
}
như một cách để mở rộng giao diện hiện Global
, nhưng nó dường như không có hiệu lực.
Đóng đinh nó, cảm ơn – d512
Cảm ơn bạn đời – basarat
Tôi không thể hình dung điều này. Tôi không có một vendor.d.ts, vì vậy tôi đã thực hiện một, nhưng nó dường như không có hiệu lực. Tôi có nên nhập nó không? – Justin