Javascript AngularJS论证';fn';不是函数,未定义
我对AngularJS 1.6有问题,错误消息是: 错误:[ng:areq]参数“fn”不是函数,未定义 我知道这是我的testService的问题,请帮助查找问题 /app.jsJavascript AngularJS论证';fn';不是函数,未定义,javascript,angularjs,Javascript,Angularjs,我对AngularJS 1.6有问题,错误消息是: 错误:[ng:areq]参数“fn”不是函数,未定义 我知道这是我的testService的问题,请帮助查找问题 /app.js import angular from 'angular'; import uiRouter from 'angular-ui-router'; import Components from './components/components'; import { TestComponent } from './tes
import angular from 'angular';
import uiRouter from 'angular-ui-router';
import Components from './components/components';
import { TestComponent } from './test/test.component';
import { ApiConstant } from './constants';
import { TestService } from './services';
angular.module('myApp', [
uiRouter,
Components
])
.component('testPage', TestComponent)
.service('TestService', TestService)
.constant('ApiConstant', ApiConstant)
.config(($stateProvider) => {
'ngInject';
$stateProvider
.state('home', {
url: '',
template: '<test-page></test-page>'
});
});
export const TestService = (ApiConstant) => {
'ngInject';
this.test = function() {
console.log(ApiConstant);
return ApiConstant;
};
};
export * from './test.service';
export const ApiConstant = {
url: 'test'
};
export * from './api.constant';
import template from './test.component.html';
import controller from './test.controller';
export const TestComponent = {
template,
controller
};
export default function TestController($scope, ApiConstant, TestService) {
'ngInject';
console.log(ApiConstant.url);
console.log(TestService.test());
}
/services/index.js
import angular from 'angular';
import uiRouter from 'angular-ui-router';
import Components from './components/components';
import { TestComponent } from './test/test.component';
import { ApiConstant } from './constants';
import { TestService } from './services';
angular.module('myApp', [
uiRouter,
Components
])
.component('testPage', TestComponent)
.service('TestService', TestService)
.constant('ApiConstant', ApiConstant)
.config(($stateProvider) => {
'ngInject';
$stateProvider
.state('home', {
url: '',
template: '<test-page></test-page>'
});
});
export const TestService = (ApiConstant) => {
'ngInject';
this.test = function() {
console.log(ApiConstant);
return ApiConstant;
};
};
export * from './test.service';
export const ApiConstant = {
url: 'test'
};
export * from './api.constant';
import template from './test.component.html';
import controller from './test.controller';
export const TestComponent = {
template,
controller
};
export default function TestController($scope, ApiConstant, TestService) {
'ngInject';
console.log(ApiConstant.url);
console.log(TestService.test());
}
/constants/api.js
import angular from 'angular';
import uiRouter from 'angular-ui-router';
import Components from './components/components';
import { TestComponent } from './test/test.component';
import { ApiConstant } from './constants';
import { TestService } from './services';
angular.module('myApp', [
uiRouter,
Components
])
.component('testPage', TestComponent)
.service('TestService', TestService)
.constant('ApiConstant', ApiConstant)
.config(($stateProvider) => {
'ngInject';
$stateProvider
.state('home', {
url: '',
template: '<test-page></test-page>'
});
});
export const TestService = (ApiConstant) => {
'ngInject';
this.test = function() {
console.log(ApiConstant);
return ApiConstant;
};
};
export * from './test.service';
export const ApiConstant = {
url: 'test'
};
export * from './api.constant';
import template from './test.component.html';
import controller from './test.controller';
export const TestComponent = {
template,
controller
};
export default function TestController($scope, ApiConstant, TestService) {
'ngInject';
console.log(ApiConstant.url);
console.log(TestService.test());
}
/constants/index.js
import angular from 'angular';
import uiRouter from 'angular-ui-router';
import Components from './components/components';
import { TestComponent } from './test/test.component';
import { ApiConstant } from './constants';
import { TestService } from './services';
angular.module('myApp', [
uiRouter,
Components
])
.component('testPage', TestComponent)
.service('TestService', TestService)
.constant('ApiConstant', ApiConstant)
.config(($stateProvider) => {
'ngInject';
$stateProvider
.state('home', {
url: '',
template: '<test-page></test-page>'
});
});
export const TestService = (ApiConstant) => {
'ngInject';
this.test = function() {
console.log(ApiConstant);
return ApiConstant;
};
};
export * from './test.service';
export const ApiConstant = {
url: 'test'
};
export * from './api.constant';
import template from './test.component.html';
import controller from './test.controller';
export const TestComponent = {
template,
controller
};
export default function TestController($scope, ApiConstant, TestService) {
'ngInject';
console.log(ApiConstant.url);
console.log(TestService.test());
}
/components/test.component.js
import angular from 'angular';
import uiRouter from 'angular-ui-router';
import Components from './components/components';
import { TestComponent } from './test/test.component';
import { ApiConstant } from './constants';
import { TestService } from './services';
angular.module('myApp', [
uiRouter,
Components
])
.component('testPage', TestComponent)
.service('TestService', TestService)
.constant('ApiConstant', ApiConstant)
.config(($stateProvider) => {
'ngInject';
$stateProvider
.state('home', {
url: '',
template: '<test-page></test-page>'
});
});
export const TestService = (ApiConstant) => {
'ngInject';
this.test = function() {
console.log(ApiConstant);
return ApiConstant;
};
};
export * from './test.service';
export const ApiConstant = {
url: 'test'
};
export * from './api.constant';
import template from './test.component.html';
import controller from './test.controller';
export const TestComponent = {
template,
controller
};
export default function TestController($scope, ApiConstant, TestService) {
'ngInject';
console.log(ApiConstant.url);
console.log(TestService.test());
}
/components/test.controller.js
import angular from 'angular';
import uiRouter from 'angular-ui-router';
import Components from './components/components';
import { TestComponent } from './test/test.component';
import { ApiConstant } from './constants';
import { TestService } from './services';
angular.module('myApp', [
uiRouter,
Components
])
.component('testPage', TestComponent)
.service('TestService', TestService)
.constant('ApiConstant', ApiConstant)
.config(($stateProvider) => {
'ngInject';
$stateProvider
.state('home', {
url: '',
template: '<test-page></test-page>'
});
});
export const TestService = (ApiConstant) => {
'ngInject';
this.test = function() {
console.log(ApiConstant);
return ApiConstant;
};
};
export * from './test.service';
export const ApiConstant = {
url: 'test'
};
export * from './api.constant';
import template from './test.component.html';
import controller from './test.controller';
export const TestComponent = {
template,
controller
};
export default function TestController($scope, ApiConstant, TestService) {
'ngInject';
console.log(ApiConstant.url);
console.log(TestService.test());
}
所以ApiConstant工作正常,但TestService生成错误,当我将从控制器中删除TestService时,它的工作正常,这可能是什么?模块依赖项应该是字符串: 错误的
angular.module('myApp', [
uiRouter,
Components
])
应该是:
angular.module('myApp', [
'uiRouter',
'Components'
])
可能与您的服务是一个箭头函数有关,同时也使用
此
更改为导出默认函数TestService(apiconstat),但不起作用hmm您能创建一个实例吗?