【发布时间】:2015-10-22 06:01:10
【问题描述】:
我正在尝试使用 ngMock 模拟请求/响应并收到此错误:Unexpected request: GET /locales/en_us.json。在四处挖掘之后,我发现了这个post,关于如何解决这个错误。添加$translateProvider.preferredLanguage('en_us') 修复了错误,但模板未呈现,即我只看到一个空白页。在运行方法中,我有以下内容:
$httpBackend.whenGET(env.baseUri + '/1.0/test-data').respond(function(method, url, data){
return [200, [
{
"id": 1,
"name": "test name",7,
"version": "1.0"
}
]]
在配置方法中:
$translateProvider.preferredLanguage('en_us');
编辑我通过为“语言环境”添加 passThrough 来修复此错误:
myAppDev = angular.module('myAppDev', ['myApp', 'ngMockE2E']);
myAppDev.run(function($httpBackend) {
phones = [{name: 'phone1'}, {name: 'phone2'}];
// adds a new phone to the phones array
$httpBackend.whenPOST('/phones').respond(function(method, url, data) {
var phone = angular.fromJson(data);
phones.push(phone);
return [200, phone, {}];
});
$httpBackend.whenGET(/^\/locales\//).passThrough();
});
【问题讨论】:
标签: angularjs angular-translate angular-mock