首页 > 解决方案 > Puppeteer 访问角度控制器功能

问题描述

我有一个角度控制器函数 $scope.upload(filePath) 用于上传文件。

我想直接从 puppeteer 脚本调用该函数。但我似乎无法找到脚本。

我尝试了多种选择......最新的不起作用是:

    await page.evaluate((filePath) => upload(filePath), filePath);

有任何想法吗?

标签: angularjspuppeteer

解决方案


注意:根据您对 $scope 的使用,我假设这是一个 AngularJS 问题。为此,您可以使用窗口对象。在您的 angularJS 控制器中,您可以创建:

window.upload = function(filePath) { ... }

并从 puppeteer 中调用它:

await page.evaluate((filePath) => { return Promise.resolve(window.upload(filePath)); }, filePath);

推荐阅读