我正在使用节点版本 0.10.30。在量角器 1.6.1 上,我能够转义 ng-show 中的单引号字符以返回一个值。例如:
element.all(by.css('[ng-if="user"]')).all(by.css('[ng-show="user.name === 'Jhonny'"]').getText()
但是升级到量角器 1.8.0 和 2.0.0 后,字符转义不再起作用(升级后我回滚到量角器 1.6.1,它再次工作)。然后我尝试另一个代码
element.all(by.css('[ng-if="user"]')).map(function(ele) {return ele;});
上面的代码使elementExplorer崩溃,并出现以下错误:
(node) warning: possible EventEmitter memory leak detected. 11 listeners added. Use emitter.setMaxListeners() to increase limit.
Trace
at Client.addListener (events.js:160:15)
at CommandRepl.evaluate_ (C:UserstestAppDataRoamingnpmnode_modulesprotractorlibdebuggermodescommandRepl.js:111:15)
at CommandRepl.stepEval (C:UserstestAppDataRoamingnpmnode_modulesprotractorlibdebuggermodescommandRepl.js:33:8)
at WdRepl.stepEval_ (C:UserstestAppDataRoamingnpmnode_modulesprotractorlibdebuggerclientsexplorer.js:48:16)
at Interface.<anonymous> (repl.js:239:12)
at Interface.emit (events.js:95:17)
at Interface._onLine (readline.js:202:10)
at Interface._line (readline.js:531:8)
at Interface._ttyWrite (readline.js:760:14)
at ReadStream.onkeypress (readline.js:99:10)
我尝试使用量角器 --elementExplorer 中的节点或目录运行 elementExplorer,两者都有相同的问题。还有其他人经历过这种情况吗?
我遇到了同样的问题,试图通过.css量角器的元素资源管理器来转义撇号。我的解决方案是使用双反斜杠:
element.all(by.css('[ng-if="user"]')).all(by.css('[ng-show="user.name === \'Jhonny\'"]').getText()