Pemeriksaan jenis Typescript tidak mengenali kaedah Elemen Puppeteer


Mempunyai kod berikut

   const [button] = await page.$x(`//div[@class='QS5gu sy4vM'][contains(., 'Accept all')]`)
   await button.click()

Typescript menunjukkan isu apabila melayang di atas button.click() Konteks 'this' bagi jenis 'ElementHandle<Node>' tidak boleh ditugaskan kepada 'this' bagi kaedah jenis 'ElementHandle<Element>'.

Memang halaman tersebut. Tandatangan $x adalah ElementHandle<Node> tetapi saya tidak faham mengapa ia mengeluarkan ralat ini.

Adakah terdapat sebarang cara untuk membetulkannya?

Jawapan #1

await button.evaluate((node) => (node as HTMLElement).click()