我刚开始使用量角器,在开始教程时我被阻止了.我找不到错误的真正来源......
我做了什么 :
npm install -g protractor)我得到了什么:
[11:35:46] I/hosted - Using the selenium server at http://localhost:4444/wd/hub
[11:35:46] I/launcher - Running 1 instances of WebDriver
[11:35:46] E/launcher - Could not initialize class sun.security.ssl.SSLContextImpl$TLSContext
[11:35:46] E/launcher - WebDriverError: Could not initialize class sun.security.ssl.SSLContextImpl$TLSContext
at WebDriverError (/home/bmargogne/.nvm/versions/node/v6.8.1/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:27:5)
at Object.checkLegacyResponse (/home/bmargogne/.nvm/versions/node/v6.8.1/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:639:15)
at parseHttpResponse (/home/bmargogne/.nvm/versions/node/v6.8.1/lib/node_modules/protractor/node_modules/selenium-webdriver/http/index.js:538:13)
at client_.send.then.response (/home/bmargogne/.nvm/versions/node/v6.8.1/lib/node_modules/protractor/node_modules/selenium-webdriver/http/index.js:472:11)
at ManagedPromise.invokeCallback_ (/home/bmargogne/.nvm/versions/node/v6.8.1/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1379:14)
at TaskQueue.execute_ (/home/bmargogne/.nvm/versions/node/v6.8.1/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2913:14)
at TaskQueue.executeNext_ (/home/bmargogne/.nvm/versions/node/v6.8.1/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2896:21)
at asyncRun (/home/bmargogne/.nvm/versions/node/v6.8.1/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2820:25)
at /home/bmargogne/.nvm/versions/node/v6.8.1/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:639:7
at process._tickCallback (internal/process/next_tick.js:103:7)
From: Task: WebDriver.createSession()
at …Run Code Online (Sandbox Code Playgroud) 在Javascript中,有没有办法实现类似的东西?
const databaseObjectID = "someId"; // like "product/217637"
switch(databaseObjectID) {
case includes('product'): actionOnProduct(databaseObjectID); break;
case includes('user'): actionOnUser(databaseObjectID); break;
// .. a long list of different object types
}
Run Code Online (Sandbox Code Playgroud)
这是一个好奇的问题,以了解开关/案例的可能性,因为在这个特殊情况下,我已经解决了我的问题使用const type = databaseObjectID.split('/')[0];和应用开关案例type
我正在gulp-file-include使用一些部分和模板来构建我的 html 页面。通过使用上下文变量,我可以自定义每个meta标题。但是,不知道如何仅在上下文变量存在时才包含一行,因为“@@else”语句似乎不存在。
我的父级 HTML 如下所示:
@@include ('_header.html', {
"title":"my page",
"description": "description",
"canonical":"http://www.sourcefromquote.com" })
<body>
A wonderful Page
@@include ('_footer.html")
</body></html>
Run Code Online (Sandbox Code Playgroud)
我正在考虑使用_header.html类似这样的 close :
<html>
<head>
<title>@@title</title>
<meta name="description" content="@@description">
@@if (canonical) { <link rel="canonical" href="@@canonical" /> }
</head>
Run Code Online (Sandbox Code Playgroud)
如果父 HTML 中未设置“规范”变量,则会抛出错误 ( canonical is not defined)。
我想我可以在变量中包含完整的标签并忘记@@if,但这不会像预期的那么干净!
有任何想法吗 ?先感谢您。