当在模板中使用未声明的指令时,是否有任何方法可以使angular警告我

Is there anyway to make angular warn me when using undeclared directive in a template

本文关键字:任何 是否 方法 可以使 警告 angular 指令 未声明      更新时间:2023-09-26

有时我在angular指令的名称或其模板中的元素标记上拼写错误。

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

如果angularjs能警告我,我正试图使用一个未声明的指令,那就太好了,这样我就会注意到拼写错误。

这不是一个非常令人沮丧的问题,但它可以减少发现和解决这些琐碎问题的大量时间。

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

创建单元测试,以验证您的指令呈现了预期效果。

例如,如果您使用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");
});