当前的任务是为API编写客户端。 $ resource模块未正确注入。我已将ngResource注入模块,然后将其传递给工厂声明。但是在控制器内部,如果我尝试console.log($ resource),我会收到以下错误:
TypeError: 'undefined' is not a function (evaluating '$resource('https://ourlink.nl',options)')
我确信问题正在app.js中发生/不发生,但如果您有其他想法,则会接受输入。你能帮我发现问题吗?
function restClient ($resource) {
'use strict';
var options = {};
init();
return {
endpoint: self.endpoint,
sendRequest: sendRequest
};
function init () {
self.endpoint = 'https://ourlink.nl';
}
function sendRequest () {
$resource('https://ourlink.nl', options);
return true;
}
}
module.exports = restClient;
var angular = require('angular');
// imports
require('angular-resource');
(function (angular, config, loaders, controllers, services, providers) {
'use strict';
angular
.module('at.annabel', [
'ngLocale',
'ngRoute',
'ngResource',
'ngSanitize',
'pascalprecht.translate',
'ui.bootstrap'
])
// constants
.constant('translations', config.translations)
// config
.config([
'$locationProvider',
'config.BASE_PATH',
providers.locationProvider
])
// services
.factory(
'restClient',
['$resource', services.restClient]
)
// controllers
.controller(
'PlaceholderController',
[controllers.PlaceholderController]
)
;
}
))(
angular,
// config
{
menu: require('./config/menu').config
...
}
},
// loaders
{
localeLoader: require('./config/locale-loader')
},
// controllers
{
PlaceholderController: require('./modules/placeholder/placeholder-controller')
},
// services
{
restClient: require('./services/restClient')
},
//providers
{
locationProvider: require('./config/location-provider')
}
);
答案 0 :(得分:0)
原来一直都在那里。由于应用程序不在浏览器中调用restClient.js,因此我只看到在测试中调用的模块。测试运行器没有为$ resource正确设置,并且需要通过测试将$ resource注入模块。感谢所有花时间阅读和调查的人。我抓住了app.js文件,因为它非常传统,但事实证明整个文件是合法的。