Используйте document.evaluate в TypeScript

Как я могу использовать document.evaluate в TypeScript? Это не метод Document type, поэтому, когда я пытаюсь использовать его, TypeScript генерирует ошибку и не позволяет мне скомпилировать код.

Есть ли способ, которым я могу добавить это к определению Document или игнорировать ошибку компиляции?

1 ответ

Решение

Есть несколько способов сделать это. Поскольку интерфейсы в TypeScript являются расширяемыми, вы можете просто добавить требуемый метод в интерфейс Document, например так:

interface Document{
    evaluate(xpathExpression:any, 
        contextNode?:any, 
        namespaceResolver?:any, 
        resultType?:any, 
        result?:any);
}

Или вы могли бы разыграть document в any перед вызовом evaluate метод:

(<any>document).evaluate('...');

Во всяком случае, что-то в этом роде.

Другие вопросы по тегам