mirror of
https://github.com/puppeteer/puppeteer
synced 2024-06-14 14:02:48 +00:00
Simplify lib/Navigator.js
This commit is contained in:
parent
4aa74cc7f8
commit
3dfa688920
@ -14,8 +14,6 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
const VALID_WAIT_CONDITIONS = ['load', 'networkidle'];
|
||||
|
||||
class Navigator {
|
||||
/**
|
||||
* @param {!Connection} client
|
||||
@ -30,14 +28,14 @@ class Navigator {
|
||||
this._waitFor = typeof options.waitFor === 'string' ? options.waitFor : 'load';
|
||||
this._inflightRequests = 0;
|
||||
|
||||
console.assert(VALID_WAIT_CONDITIONS.includes(this._waitFor));
|
||||
console.assert(this._waitFor === 'load' || this._waitFor === 'networkidle', 'Unknown value for options.waitFor: ' + this._waitFor);
|
||||
|
||||
if (this._waitFor === 'networkidle') {
|
||||
client.on('Network.requestWillBeSent', event => this._onRequestWillBeSent(event));
|
||||
client.on('Network.loadingFinished', event => this._onLoadingFinished(event));
|
||||
client.on('Network.loadingFailed', event => this._onLoadingFailed(event));
|
||||
client.on('Network.webSocketCreated', event => this._onWebSocketCreated(event));
|
||||
client.on('Network.webSocketClosed', event => this._onWebSocketClosed(event));
|
||||
client.on('Network.requestWillBeSent', event => this._onLoadingStarted(event));
|
||||
client.on('Network.loadingFinished', event => this._onLoadingCompleted(event));
|
||||
client.on('Network.loadingFailed', event => this._onLoadingCompleted(event));
|
||||
client.on('Network.webSocketCreated', event => this._onLoadingStarted(event));
|
||||
client.on('Network.webSocketClosed', event => this._onLoadingCompleted(event));
|
||||
}
|
||||
}
|
||||
|
||||
@ -53,16 +51,10 @@ class Navigator {
|
||||
let navigationComplete;
|
||||
let navigationFailure = new Promise(fulfill => this._client.once('Security.certificateError', fulfill)).then(() => false);
|
||||
|
||||
switch (this._waitFor) {
|
||||
case 'load':
|
||||
if (this._waitFor === 'load')
|
||||
navigationComplete = new Promise(fulfill => this._client.once('Page.loadEventFired', fulfill));
|
||||
break;
|
||||
case 'networkidle':
|
||||
else
|
||||
navigationComplete = new Promise(fulfill => this._navigationLoadCallback = fulfill);
|
||||
break;
|
||||
default:
|
||||
throw new Error(`Unrecognized wait condition: ${this._waitFor}`);
|
||||
}
|
||||
|
||||
this._inflightRequests = 0;
|
||||
|
||||
@ -85,41 +77,6 @@ class Navigator {
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {!Object} event
|
||||
*/
|
||||
_onRequestWillBeSent(event) {
|
||||
this._onLoadingStarted(event);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {!Object} event
|
||||
*/
|
||||
_onWebSocketCreated(event) {
|
||||
this._onLoadingStarted(event);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {!Object} event
|
||||
*/
|
||||
_onWebSocketClosed(event) {
|
||||
this._onLoadingCompleted(event);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {!Object} event
|
||||
*/
|
||||
_onLoadingFinished(event) {
|
||||
this._onLoadingCompleted(event);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {!Object} event
|
||||
*/
|
||||
_onLoadingFailed(event) {
|
||||
this._onLoadingCompleted(event);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {!Object} event
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user