Javascript ECMAscript 6无法使用导入类运行脚本
我在学习SeleniumWebDriver。我不能用导入类运行脚本,但我可以不用类运行它,只使用导入函数。我用babel cli运行它,就像这样Javascript ECMAscript 6无法使用导入类运行脚本,javascript,selenium-webdriver,Javascript,Selenium Webdriver,我在学习SeleniumWebDriver。我不能用导入类运行脚本,但我可以不用类运行它,只使用导入函数。我用babel cli运行它,就像这样node./babel cli/bin/babel-node.js——预设node6./test.js //test.js import homePage from "./home_page" var webdriver = require('selenium-webdriver'), By = webdriver.By, until
node./babel cli/bin/babel-node.js——预设node6./test.js
//test.js
import homePage from "./home_page"
var webdriver = require('selenium-webdriver'),
By = webdriver.By,
until = webdriver.until;
var driver = new webdriver.Builder()
.forBrowser('firefox')
.build();
home_page = new homePage(driver);
home_page.go_home_page();
//home_page.js
export default class homePage{
constructor(driver){
this.driver = driver;
}
go_home_page = function(){
this.driver.get("https://www.google.com/");
}
}
错误是:
home\u page.js:意外令牌(5:15)
es6需要使用babel进行传输。您需要在包json文件中包含babel。最初是节点,并过渡到ES2015模块
您的示例同时使用了这两种方法:import
是ES2015,而require
是CommonJS。如果将import
更改为require
,它应该可以工作
导入的CommonJS等价物应该如下所示:
var homePage = require('./home_page');
我使用
node./babel cli/bin/babel-node.js运行它——预设node6./test.js
另请参见:既然您使用的是babel,应该可以使用import
,但我还不太熟悉,无法告诉您需要做什么。我知道需要对目标ES版本和模块系统进行专门配置,尽管预设应该为您做很多这方面的工作。您能告诉我如何使用require导入我的类吗?请