Tôi đang cố gắng viết định nghĩa kiểu cho gói xmldoc
npm.Trình chỉ mục TypeScript vẫn nhận được lỗi tslint "truy cập đối tượng qua chuỗi ký tự không được phép"
Cho đến nay tôi có điều này:
declare module 'xmldoc' {
export class XmlDocument {
constructor(contents: string);
public children: IXmlNode[];
}
export interface IXmlNode {
attr: IXmlAttributes;
val: string;
name: string;
children: IXmlNode[];
}
export interface IXmlAttributes {
[index: string]: string;
}
}
tslint vẫn phàn nàn vào mã
valueId = node.attr["id"];
này với thông báo lỗi object access via string literals is disallowed
Tôi nghĩ indexer của tôi ([index: string]: string
) làm việc xung quanh này .
Có ai cho tôi một đầu mối về lý do tại sao nó không hoạt động không?
Tôi nghĩ rằng điều này trông giống như một lỗi trong tslint, thay vì có lẽ chỉ không loại trừ quy tắc đó cho chữ ký chỉ mục. Có vẻ như trường hợp sử dụng hợp lệ, hãy thử gửi một bugreport/suggestion: https: //github.com/palantir/tslint/issues – Alex