加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 程序设计 > 正文

使用依赖项测试angularjs指令

发布时间:2020-05-22 23:35:39 所属栏目:程序设计 来源:互联网
导读:我是AngularJs的新手,并且在尝试使用依赖项测试指令时遇到问题(虽然指令本身按预期工作).我无法在这里或其他资源上找到任何答案. 这是我的代码: 指示: angular.module(MyApp) .directive(appVersion, [config, function (config) { return function (scope,

我是AngularJs的新手,并且在尝试使用依赖项测试指令时遇到问题(虽然指令本身按预期工作).我无法在这里或其他资源上找到任何答案.

这是我的代码:

指示:

angular.module('MyApp')
  .directive('appVersion',['config',function (config) {
    return function (scope,elm) {
      elm.text(config.version);
    };
  }]);

服务(价值):

angular.module('MyApp')
  .value('config',{
    version: '0.1'
  });

测试:

describe('Directive: AppVersion',function () {
    beforeEach(module('MyApp'));

    var element;

    it('should have element text set to config value',inject(function ($rootScope,$compile,config) {
        var scope = $rootScope;
        element = $compile('<app-version></app-version>')(scope);
        expect(element.text()).toBe(config.version);
    }));
});

我的测试失败并显示消息:

Error: Expected '' to be '0.1'.

意味着配置值被正确注入,但$complile没有使用它.我真的很感激任何帮助.谢谢.

您没有指定指令的restrict属性.
如果不指定它,则表示将声明为属性的app-version的角度查找,而不是元素.

因此,您可以将restrict属性添加到指令或更改模板:

element = $compile('<div app-version></div>')(scope);

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读