首页 > 解决方案 > 将参数传递到 browser.executeScript

问题描述

如何将参数传入browser.executeScript

  static sortableDragAndDropByClassName(dragElementClassName: string, dropElementClassName: string) {
    return browser.executeScript(function () {
      console.log(dragElementClassName);
      console.log(dropElementClassName);
    });
  }

给我以下错误消息:

- Failed: javascript error: dragElementClassName is not defined

我的测试:

 Helpers.sortableDragAndDropByClassName('page-row-option-item-1', 'page-row-option-item-0').then(() => {

 ...

 });

标签: javascriptangulartypesprotractor

解决方案


您应该能够将这些变量作为参数传递并像这样访问它们。

return browser.executeScript(function () {
  console.log(arguments[0]);
  console.log(arguments[1]);
}, dragElementClassName, dropElementClassName);

推荐阅读