The*_*193 6 angularjs angularjs-factory ng-idle
我有一个控制器,如下所示.
(function () {
"use strict";
var app = angular.module('Demo')
.controller('MainController', ['$rootScope', '$scope', '$location', 'curUser',MainController]);
function MainController($rootScope, $scope, $location, curUser) {
//some logic here
}());
Run Code Online (Sandbox Code Playgroud)
我试图包含一个名为ngIdle的第三方模块,结果代码如下所示.
(function () {
"use strict";
var app = angular.module('Demo', ['ngIdle'])
.controller('MainController', ['$rootScope', '$scope', '$location', 'curUser','Idle', function ($rootScope, $scope, $location, curUser, Idle) {
}]).config(function (IdleProvider, KeepaliveProvider) {
// configure Idle settings
IdleProvider.idle(5); // in seconds
IdleProvider.timeout(5); // in seconds
KeepaliveProvider.interval(2); // in seconds
})
.run(function (Idle) {
// start watching when the app runs. also starts the Keepalive service by default.
Idle.watch();
});
}());
Run Code Online (Sandbox Code Playgroud)
现在我收到一个错误错误:[$ injector:unpr]未知提供者:curUserProvider < - curUser < - MainController.这是curUser工厂定义
(function () {
"use strict";
angular.module("services").factory("curUser", curUser)
function curUser() {}
}());
Run Code Online (Sandbox Code Playgroud)
curUser是在services模块中定义的,因此需要将其添加为应用程序中的依赖项。即使在添加 之前情况也是如此ngIdle。
var app = angular.module('Demo', ["ngIdle", "services"])
Run Code Online (Sandbox Code Playgroud)
工厂函数还应该返回一些东西。
function curUser() {
return { username: 'fooBar'};
}
Run Code Online (Sandbox Code Playgroud)
请参阅工作笨蛋。