本文整理汇总了TypeScript中chrome-launcher.LaunchedChrome类的典型用法代码示例。如果您正苦于以下问题:TypeScript LaunchedChrome类的具体用法?TypeScript LaunchedChrome怎么用?TypeScript LaunchedChrome使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了LaunchedChrome类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: create
export async function create(html: string, options?: CreateOptions): Promise<CreateResult> {
const myOptions = Object.assign({}, options);
let chrome: LaunchedChrome;
myOptions._canceled = false;
if (myOptions.timeout >= 0) {
setTimeout(() => {
myOptions._canceled = true;
}, myOptions.timeout);
}
await throwIfCanceled(myOptions);
if (!myOptions.host && !myOptions.port) {
await throwIfCanceled(myOptions);
chrome = await launchChrome(myOptions);
}
try {
const tab = await CDP.New(myOptions);
try {
return await generate(html, myOptions, tab);
} finally {
await CDP.Close({ ...myOptions, id: tab.id });
}
} finally {
if (chrome) {
await chrome.kill();
}
}
}
示例2: runLighthouse
export async function runLighthouse(
url: string, flags: Flags, config: Object|null): Promise<{}|void> {
let launchedChrome: LaunchedChrome|undefined;
try {
launchedChrome = await getDebuggableChrome(flags);
flags.port = launchedChrome.port;
const results = await lighthouse(url, flags, config);
const artifacts = results.artifacts;
delete results.artifacts;
await saveResults(results, artifacts!, flags);
if (flags.interactive) {
await performanceXServer.hostExperiment({url, flags, config}, results);
}
await launchedChrome.kill();
return results;
} catch (err) {
if (typeof launchedChrome !== 'undefined') {
await launchedChrome!.kill();
}
return handleError(err);
}
}
示例3: launchChrome
export function launchChrome(url): [Promise<void>, IChromeProcess] {
let resolveFinish: (code: number) => void;
let rejectFinish: (err: Error) => void;
let launchedChrome: LaunchedChrome;
let res: IChromeProcess = {
// crash/finish notification does not work with chrome-launcher
finish: new Promise<number>((resolve, reject) => {
resolveFinish = resolve;
rejectFinish = reject;
}),
kill() {
if (launchedChrome) launchedChrome.kill();
}
};
return [
chromeLauncher
.launch({
startingUrl: url,
chromeFlags: ["--headless", "--disable-gpu"]
})
.then(chrome => {
launchedChrome = chrome;
})
.catch(rejectFinish),
res
];
}
示例4: close
async close(): Promise<void> {
const { client } = await this.runtimeClientPromise
if (this.options.cdp.closeTab) {
await CDP.Close({ id: client.target.id })
}
if (this.chromeInstance) {
this.chromeInstance.kill()
}
await client.close()
}