在模板

时间:2015-11-27 10:06:10

标签: javascript angularjs

有时我在角度指令的名称或模板中的元素标签上输入了拼写错误。

但是,我得到的唯一反馈是指令的意外消失。

如果angularjs可以警告我我正在尝试使用未声明的指令,我们会很高兴,所以我会注意到这个错字。

这不是一个非常令人沮丧的问题,但它可以减少很多时间来发现和修复这些微不足道的问题。

想法:Angular应警告未使用angular.directive(..)声明的应用中使用的任何非html标记,但此功能应该能够被选择性地关闭。

1 个答案:

答案 0 :(得分:1)

创建单元测试以验证指令是否呈现预期结果。

例如,如果您使用Jasmine ......

beforeEach(angular.mock.inject(function ($rootScope, $compile) {
    mockScope = $rootScope.$new();
    compileService = $compile;
}));

...

it('Renders what I want', function () {
    //Arrange
    var element = compileService('<div my-directive></div>')(mockScope);
    //Act
    mockScope.$digest();
    //Assert
    expect(element.html()).toContain("expected content");
});