Таким образом, проблема в том, что по умолчанию jsdom.env
не выполняет обнаруженный JavaScript при обработке разметки.
Вам нужно будет включить эти функции:
jsdom.env({
// ...
features : {
FetchExternalResources : ['script'],
ProcessExternalResources : ['script']
}
});
FetchExternalResources
контролирует, должен ли jsdom работать с сетью / диском для сбора байтов ресурса
ProcessExternalResources
управляет выполнением или извлечением сценариев
Примечание эти имена были выбраны для охвата других типов ресурсов (читай: изображения, CSS и т. Д.), Которые будут добавлены в будущем. Идея состоит в том, чтобы обеспечить нормальные значения по умолчанию, но иметь много поворотных ручек, которые влияют на поведение jsdom.