我目前正在测试angularjs指令。该指令有一个templateUrl。我会测试视图,以确保它被正确初始化,即正确的按钮数量,隐藏的某些元素。
我遇到的问题是,当我将html文件插入模板缓存时,我仍然得到:
"message": "Unexpected request: GET partials/stuff/stuff-leader.html
我认为当我使用templateCache时,我将不再需要使用:
$httpBackend.whenGET("partials/stuff/stuff-leader.html").respond([{
userId: 000
}]);
但似乎并非如此。我想知道我是否正确插入模板,以下是我的工作方式:
template = $templateCache.get('/full/root/disk/path/to/file/stuff/stuff-leader.html');
$templateCache.put('/myApp/templates/stuff-leader.html',template);
这是正确的,还是应该把它放在其他地方?
答案 0 :(得分:1)
您正在使用$templateCache.get
执行请求。而是做:
beforeEach(inject(function ($templateCache) { $templateCache.put('partials/stuff/stuff-leader.html', '< div >...TemplateCode....< /div >'); }));
答案 1 :(得分:1)
在/partials/stuff/stuff-leader.html
处查找您的普通模板,因此您需要注入模板缓存而不是/myApp/templates/stuff-leader.html
。