【发布时间】:2020-03-05 13:00:00
【问题描述】:
我在使用过滤器功能的量角器中使用以下功能。这里让 requiredArtifacts 被声明,一旦过滤器承诺得到解决,它将成为过滤器函数的返回值。 这意味着当我运行这个函数时,let loc = requiredArtifacts.getLocation(); 应该给我未定义的错误,因为过滤器操作是异步的并返回承诺。 但它工作得很好。 这是否意味着过滤器函数不返回承诺,而是以同步方式执行。 请澄清,因为我是这个编码的新手。
this.deleteRTI = function(rtiName, operationName){
let str = rtiName +' [Rule Template Instance]'
console.log(str)
let requiredArtifacts = this.listProjectsArtifacts.filter(function(element,index) {
return element.getText().then(function(text){
return text === str;
})
}).first();
let loc = requiredArtifacts.getLocation();
browser.actions().mouseMove(loc).perform();
browser.actions().click(protractor.Button.RIGHT).perform();
this.rightClickOperationsOnArtifacts('Delete')
this.confirmDeleteArtifacts.click()
return this.deployToastMessage.getText().then(function(text){
return text;
})
}
【问题讨论】:
标签: javascript node.js jasmine protractor