NodeJS 检查 typeOf node/module (Puppeteer)
NodeJS check typeOf node/module (Puppeteer)
我正在为 nodejs 的类型检查而苦苦挣扎。
我打算使用库 Puppeteer 来测试我自己的网页。为此,我想检查函数参数具有正确类型的方法。
如何从模块“Puppeteer”访问类型“Page”?
这是一个代码示例
const pup = require('puppeteer');
/**
*
* @param {puppeteer.page} page Puppeter Browser Page (Tab)
*/
async function navigateToPage(page){
if(page instanceof page) throw("The passed variable page is not typeOf puppeteer.page")
}
我这样做是为了获得 class 名称:
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch({headless: true, args: ['--no-sandbox']});
const page = await browser.newPage();
console.log(page.constructor.name);
process.exit(0);
// show Page
})();
而且我在源代码中找到了一个定义此 class 的文件:
https://github.com/puppeteer/puppeteer/blob/main/src/common/Page.ts
但是当我浏览节点模块文件夹时,我在这里找到了它:
'puppeteer/lib/cjs/puppeteer/common/Page'
不过,此代码似乎有效。
const puppeteer = require('puppeteer');
const {Page} = require('puppeteer/lib/cjs/puppeteer/common/Page');
(async () => {
const browser = await puppeteer.launch({headless: true, args: ['--no-sandbox']});
const page = await browser.newPage();
console.log(page instanceof Page);
})();
你想用它达到什么目的?
我正在为 nodejs 的类型检查而苦苦挣扎。 我打算使用库 Puppeteer 来测试我自己的网页。为此,我想检查函数参数具有正确类型的方法。
如何从模块“Puppeteer”访问类型“Page”?
这是一个代码示例
const pup = require('puppeteer');
/**
*
* @param {puppeteer.page} page Puppeter Browser Page (Tab)
*/
async function navigateToPage(page){
if(page instanceof page) throw("The passed variable page is not typeOf puppeteer.page")
}
我这样做是为了获得 class 名称:
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch({headless: true, args: ['--no-sandbox']});
const page = await browser.newPage();
console.log(page.constructor.name);
process.exit(0);
// show Page
})();
而且我在源代码中找到了一个定义此 class 的文件:
https://github.com/puppeteer/puppeteer/blob/main/src/common/Page.ts
但是当我浏览节点模块文件夹时,我在这里找到了它: 'puppeteer/lib/cjs/puppeteer/common/Page'
不过,此代码似乎有效。
const puppeteer = require('puppeteer');
const {Page} = require('puppeteer/lib/cjs/puppeteer/common/Page');
(async () => {
const browser = await puppeteer.launch({headless: true, args: ['--no-sandbox']});
const page = await browser.newPage();
console.log(page instanceof Page);
})();
你想用它达到什么目的?