如何使用jasmine测试document.getElementById在angular中返回的DOM事件

时间:2016-12-21 10:44:17

标签: javascript angularjs jasmine karma-jasmine

我的控制器中有以下代码。

        var myLink = document.getElementById('myId');

        myLink.onclick = function (event) {
            event.preventDefault();
            $state.transitionTo('mystate', { message:"hello" });
        }

当我在我的测试用例中为控制器创建对象时,它会给出错误:无法设置属性' onclick'为null

任何人都知道如何处理这个问题?

1 个答案:

答案 0 :(得分:1)

你应该使用ng-click你的元素并抛弃myLink参考。

<div id="myId" ng-click="changeState()"></div>

请阅读doc