2 回答

TA貢獻1796條經驗 獲得超10個贊
您的sflow
變量未定義意味著以下表達式不返回任何內容。
$$("app-filters-manager app-salesflow-panel mat-expansion-panel").find(element => { return element.getText() === salesflowName; });
發生這種情況的原因有幾個:
您確定
$$("app-filters-manager app-salesflow-panel mat-expansion-panel")
返回您要查找的元素的父級嗎?選擇器是否正確?請記住,find() 會遍歷并找到選擇器的子項
$$("app-filters-manager app-salesflow-panel mat-expansion-panel")
。它也可能返回多個孩子。如果該選擇器已經是您要使用的元素,則刪除以下部分:
const sflow = $$("app-filters-manager app-salesflow-panel mat-expansion-panel") .find(element => { return element.getText() === salesflowName; }) ;
確保您為
salesflowName
param傳遞了正確的值element.getText()
可能會返回一些帶有空格的文本。嘗試element.getText().trim()
基本上你需要確保sflow
變量的值被初始化。無論是您的選擇器、salesflowName
參數或空格未能通過相等性測試的問題,都需要通過調試進行調查。
祝你好運!

TA貢獻1794條經驗 獲得超7個贊
看起來您的選擇器無效。不應該是這樣(找課的選擇器)嗎?
const sflow = $$(".app-filters-manager .app-salesflow-panel .mat-expansion-panel").find(element => { return element.getText() === salesflowName;`
其他選擇器也一樣。并且find應該返回一個孩子,這樣就可以了。
但如果它是有效的,你確定元素在 DOM 中嗎?
添加回答
舉報