Tôi thiết lập không gian tên toàn cầu cho các đối tượng của mình bằng cách đặt rõ ràng một thuộc tính window.
window.MyNamespace = window.MyNamespace || {};
TypeScript gạch chân MyNamespacevà phàn nàn rằng:
Thuộc tính 'MyNamespace' không tồn tại trên giá trị của loại 'cửa sổ' bất kỳ "
Tôi có thể làm cho mã hoạt động bằng cách khai báo MyNamespacenhư một biến xung quanh và loại bỏ nhân chứng windownhưng tôi không muốn làm điều đó.
declare var MyNamespace: any;
MyNamespace = MyNamespace || {};
Làm thế nào tôi có thể giữ windowtrong đó và làm cho TypeScript hạnh phúc?
Là một lưu ý phụ, tôi thấy thật buồn cười khi TypeScript phàn nàn vì nó nói với tôi rằng đó windowlà loại anymà chắc chắn có thể chứa bất cứ thứ gì.