Проблема с использованием catchError с коллекцией RxFire firestoreData

Поскольку вы открыты для предложений, я предлагаю puppeteer . Это собственный модуль node.js, который открывает страницы в новейшем Chromium (особенно полезно, поскольку PhantomJS очень устарел) и близок к PhantomJS в терминах

Если вы также используете node.js 8.x, синтаксис async / await доступен для работы с обещаниями, и он делает скремблер с кукольным веером.

Итак, чтобы запустите эту функцию в кукловоде, который вы запустите

await page.evaluate(() => page.hist(this,'P-0.00-0-0','355svxv498x0x0',417,event,0,1) );

Update

В кукольном купе есть много помощников по удобству, одна из которых - page.hover , которая буквально будет наведите указатель на элемент:

await page.hover('td.some_selector');

Но если вы хотите продолжить использовать Phantomjs и отличный модуль phantom, вы можете:

_page.evaluate(function() {
    page.hist(this,'P-0.00-0-0','355svxv498x0x0',417,event,0,1)
})

Документы на page.evaluate: http://phantomjs.org/api/webpage/method/evaluate.html

0
задан ggradnig 19 January 2019 в 19:07
поделиться

1 ответ

catchError будет отлавливать ошибки, возвращаемые наблюдаемой. В вашем случае это collectionData. Я не знаком с RxFire, но если вы скажете, что collectionData emits a result with no elements, то имеет смысл не вызывать catchError. Пустые результаты все еще считаются (успешными) результатами. Попробуйте сделать collectionData неудачным, чтобы посмотреть, не получите ли вы ошибку в catchError.

0
ответ дан Dzhavat Ushev 19 January 2019 в 19:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: