繁体   English   中英

返回 json 对象 nightwatch.js

[英]Returning json object nightwatch.js

我想像这样从我的 html ul 列表中执行这样的 json 对象

{name: "Nick", surname:"Kyrgios", age: "22", city: "Sydney"}, {....}, {....}

这是 html 部分

<html>
<ul>
  <li class="user">
    <div class="name">Nick</div>
    <div class="surname">Kyrgios</div>
    <div class="age">22</div>
    <div class="city">Sydney</div>
  </li>
  <li class="user odd">
    <div class="name">Nick</div>
    <div class="surname">Kyrgios</div>
    <div class="age">22</div>
    <div class="city">Sydney</div>
  </li>
</ul>
</html>

我的守夜人js文件

browser.elements('css selector','ul li', function (result) {
  els = result.value;
  var i = 0;
  els.forEach(function(el, j, elz){
    browser.elementIdText(el.ELEMENT, function(text) {
      console.log(text)
    })
  })
})

这将执行

{ state: 'success',
  sessionId: 'cdfdda85-4348-4692-9ad0-2a5d10080a27',
  hCode: 151444186,
  value: 'Nick\nKyrgios\n22\nSydney',
  class: 'org.openqa.selenium.remote.Response',
  status: 0 }
{ state: 'success',
  sessionId: 'cdfdda85-4348-4692-9ad0-2a5d10080a27',
  hCode: 118749018,
  value: 'Nick\nKyrgios\n22\nSydney',
  class: 'org.openqa.selenium.remote.Response',
  status: 0 }

主要问题是如何将其更改为普通的 json 格式,例如

{name: "Nick", surname:"Kyrgios", age: "22", city: "Sydney"}, {....}, {....}

每次运行 console.log - 你都会自动得到一个回车。 每次调用 console.log 都会使您向下一行。

您应该将结果附加到字符串

    var jsonString = "";
    els.forEach(function(el,j,elz) {
      browser.elementIdText(el.ELEMENT, function(text) {
        jsonString += text;
    })
console.log(jsonString);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM