我收到打字稿编译错误:类型'any []上不存在属性'count'尝试声明对数组具有特定数量元素的期望时,使用ElementFinder []'
因此在我的页面对象中,有一个方法可以过滤元素数组并返回结果,该结果也是数组。我的“期望”是该数组中仅包含一个元素
页面对象:
verifyStepPresent(stepToVerify: string) {
const allSteps = element.all(by.css('[formcontrolname="title"]'));
const filteredArray: ElementArrayFinder = allSteps.filter((arrayElement) => {
return arrayElement.getAttribute('value')
.then(function(value) {
return value === stepToVerify
});
});
return filteredArray;
};
测试:
builder.verifyStepPresent('test step')
.then((filteredArray) => {
expect(filteredArray.count()).toBe(1);
});
});
但是打字稿显示错误:
类型“ any []上不存在属性“计数” | ElementFinder []'。
当我打印filteredArray时,它会打印一个元素的数组,这意味着这是一个数组。那为什么我不能得到这个数组的计数呢?