Javascript Accesing父变量。然后在子变量中。然后,嵌套承诺,量角器

Javascript Accesing父变量。然后在子变量中。然后,嵌套承诺,量角器,javascript,protractor,angular-promise,Javascript,Protractor,Angular Promise,如何从子级内部访问变量。然后,在父级内部定义变量。然后 正如您可能已经猜到的,我对javascript是新手。我只知道同步思维 我现在需要一个快速的解决方案。我读过关于嵌套的末日金字塔和连锁承诺的书,但我无法理解。如果您现在能给我一个工作代码,这样我就可以访问子系统中的items[I]变量,我将不胜感激 要同时获取所有元素的属性,可以使用 var disabledArray = element.all(by.xpath("some_xpath")).getAttribute("disabled"

如何从子级内部访问变量。然后,在父级内部定义变量。然后

正如您可能已经猜到的,我对javascript是新手。我只知道同步思维

我现在需要一个快速的解决方案。我读过关于嵌套的末日金字塔和连锁承诺的书,但我无法理解。如果您现在能给我一个工作代码,这样我就可以访问子系统中的items[I]变量,我将不胜感激


要同时获取所有元素的属性,可以使用

var disabledArray = element.all(by.xpath("some_xpath")).getAttribute("disabled");
disabledArray.then(function(disabledValues){
  console.log(disabledValues); // prints the array of attribute values [true, true, false, ...etc]
});
var disabledElements = element.all(by.xpath("some_xpath")).filter(function(ele) {
       return ele.getAttribute("disabled").then(function(isDisabled){
           return isDisabled === true;
        });
});
要根据某些条件筛选元素列表,可以使用

var disabledArray = element.all(by.xpath("some_xpath")).getAttribute("disabled");
disabledArray.then(function(disabledValues){
  console.log(disabledValues); // prints the array of attribute values [true, true, false, ...etc]
});
var disabledElements = element.all(by.xpath("some_xpath")).filter(function(ele) {
       return ele.getAttribute("disabled").then(function(isDisabled){
           return isDisabled === true;
        });
});

在for循环中使用let而不是var应该可以解决您的问题