【问题标题】:Protractor: mock angularjs attribute量角器:模拟 angularjs 属性
【发布时间】:2019-04-04 11:40:38
【问题描述】:

我有一个包含noDoubleClick 属性的通用模块,我用它来防止表单按钮被意外点击两次。

(function () {
  function NoDoubleClickDirective() {
    return {
      restrict: 'A',
      link(scope, elem) {
        let clicked = false;
        elem.on('click', (e) => {
          if (clicked) {
            e.preventDefault();
          } else {
            clicked = true;
            setTimeout(() => {
              clicked = false;
            }, 3000);
          }
        });
      },
    };
  }

  angular
    .module('my.common')
    .directive('noDoubleClick', NoDoubleClickDirective);
}());

但是在使用量角器运行测试时我不想要这个功能。反正有没有禁用该属性?

我试过这样,但它不起作用

onPrepare() {
    browser.addMockModule('my.common', function() {
      angular
        .module('my.common')
        .directive('noDoubleClick', () => {});
    });
}

【问题讨论】:

    标签: javascript mocking protractor e2e-testing angularjs-1.7


    【解决方案1】:

    为了让它工作,我不得不把属性放在子模块中

    browser.addMockModule('my.common.no-double-click', function() {
      angular
        .module('my.common.no-double-click', [])
        .directive('noDoubleClick', () => {});
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-14
      • 1970-01-01
      • 1970-01-01
      • 2018-12-13
      • 1970-01-01
      • 2016-03-01
      • 1970-01-01
      • 2013-10-04
      相关资源
      最近更新 更多