ReferenceError:尝试在Linux中的命令行上运行灯塔报告时未定义URL

时间:2019-10-30 08:31:04

标签: node.js lighthouse

我已经安装了chrome,LTS版本的Node和lighthouse,但是在尝试运行审核时出现以下错误:

/usr/local/lib/node_modules/lighthouse/lighthouse-core/lib/url-shim.js:36
class URLShim extends URL {
                      ^

ReferenceError: URL is not defined
    at Object.<anonymous> (/usr/local/lib/node_modules/lighthouse/lighthouse-core/lib/url-shim.js:36:23)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Module.require (module.js:596:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/usr/local/lib/node_modules/lighthouse/lighthouse-core/lib/network-request.js:14:13)
    at Module._compile (module.js:652:30)

安装所有必需的软件后,我尝试对其进行测试并得到上述错误。

灯塔https://www.bbc.co.uk

据我了解,您可以在命令行中键入lighthouse,然后输入您要对其进行审核的站点的URL。但我不断得到:

  

ReferenceError:未定义URL。

我做错什么了吗?请帮助。

1 个答案:

答案 0 :(得分:0)

我有同样的问题。您的节点版本已过时。 通过运行node --version

进行检查

如果小于10,则说明您有问题。

https://nodejs.org/api/globals.html#globals_url

要更新节点:

sudo npm cache clean -f
sudo npm install -g n
sudo n stable

然后再次检查您的节点版本:

node --version

您也可以选择使用sudo n Latest安装最新版本,但我建议使用稳定版。