语法错误:在严格模式下使用 const



我正在尝试使用Selenium-webdriver登录 facebook.com。

var webdriver = require('selenium-webdriver'),
    By = require('selenium-webdriver').By,
    until = require('selenium-webdriver').until;
var driver = new webdriver.Builder()
    .forBrowser('firefox')
    .build();
driver.get('https://www.facebook.com/login');
driver.findElement(By.id('email')).sendKeys('****');
driver.findElement(By.id('pass')).sendKeys('*****');
driver.findElement(By.id('loginbutton')).click();
driver.findElement(By.linkText('Settings')).then(function(element) {
  console.log('Yes, found the element');
}, function(error) {
  console.log('The element was not found, as expected');
});
driver.quit();

它给出错误:

/home/shubham/node_modules/selenium-webdriver/index.js:25
const builder = require('./builder');
^^^^^
SyntaxError: Use of const in strict mode.
    at Module._compile (module.js:439:25)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/home/shubham/Music/amazon_login/test_22_4_16/sel_login.js:1:79)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)

node --version v0.10.37

npm --version 1.4.28

protractor --version 版本 3.2.2

硒-webdriver@2.53.1

更新nodejs解决了这个问题:

npm cache clean -f
sudo npm install -g n
sudo n stable
node --version
node app.js

您必须以 root/管理员身份运行第二个和第三个命令。

n stable不会为我解决问题。另一方面

nvm install stable

这实际上让我到了最后一个nodejs版本。显然n stable不会为我获得通行证v0.12.14。我真的不知道为什么。

注意:nvm节点版本管理器,您可以从其 github 页面安装它。感谢@isaiah注意到nvm不是已知的命令。

对我来说,解决起来更简单,只需访问 Node 网站,获取并安装 LTS 版本即可。

更新您的node,它将解决此问题。

更新 NodeJS 可以解决这个问题。但是,运行sudo npm install -g n后,您可能会收到以下错误:

npm: relocation error: npm: symbol SSL_set_cert_cb, version libssl.so.10 not defined in file libssl.so.10 with link time reference

为了克服此错误,请尝试使用以下命令升级 openssl:

sudo yum update openssl

该错误意味着节点的发布量低于需求。小心地更新计算机的节点。

最新更新