Javascript 如何将我的服务注入我的控制器
我对angularJS比较陌生,我对angularJS 1.3.0测试版有一个问题 我正在尝试将我的服务(独立模块)插入控制器 这是我的应用程序代码Javascript 如何将我的服务注入我的控制器,javascript,angularjs,dependency-injection,angularjs-service,Javascript,Angularjs,Dependency Injection,Angularjs Service,我对angularJS比较陌生,我对angularJS 1.3.0测试版有一个问题 我正在尝试将我的服务(独立模块)插入控制器 这是我的应用程序代码 'use strict'; angular.module('lifecareApp', [ 'lifecareApp.validationServices' , 'lifecareApp.loginController' , 'lifecareApp.signupController' ]). config(function ($
'use strict';
angular.module('lifecareApp', [
'lifecareApp.validationServices'
, 'lifecareApp.loginController'
, 'lifecareApp.signupController'
]).
config(function ($routeProvider, $locationProvider) {
$routeProvider.
when('/account/login', {
controller: 'loginController'
}).
when('/account/signup', {
controller: 'signupController'
})
$locationProvider.html5Mode(true);
});
'use strict';
/* Controllers */
angular.module('lifecareApp.loginController', []).
controller('loginController', ['$scope', 'validationServices' function ($scope, validationServices) {
$scope.emailError = false;
$scope.passwordError = false;
$scope.overallError = false;
$scope.login = function(){
var email = $scope.tbEmail;
var password = $scope.tbPassword;
var passwordValidation = validationServices.validateRequiredField(password);
var emailValidation = validationServices.validateEmail(email, true);
if (emailValidation){
$scope.emailError = true;
$scope.valEmail = emailValidation;
}else{
$scope.valEmail = "";
$scope.emailError = false;
}
if (passwordValidation){
$scope.passwordError = true;
$scope.valPassword = passwordValidation;
}else{
$scope.valPassword = "";
$scope.passwordError = false;
}
if (passwordValidation || emailValidation){
$scope.overallError = true;
$scope.valError = "Login Error!";
return;
}else{
$scope.overallError = true;
$scope.valError = "";
}
};
}]);
这是我的服务代码
'use strict';
angular.module('lifecareApp.validationServices', []).
factory('validationServices', function () {
return {
validateRequiredField: function (value, requiredMessage) {
if (value){
return false; //returns false
}else{
if (requiredMessage){
return requiredMessage;
}else{
return "Required";
}
}
},
validateEmail: function (value, required, requiredMessage, invalidEmailMessage){
//validate if its required first
if (required){
if (value){
//validate the email next
var checkEmailRegex = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
if (checkEmailRegex.test(value)){
return false;
}else{
if (invalidEmailMessage){
return false;
}else{
return "Invalid Email";
}
}
}else{
if (requiredMessage){
return requiredMessage;
}else{
return "Required";
}
}
}
}
};
});
我不断地犯这个错误。
未捕获错误:[$injector:modulerr]$injector/modulerr?p0=lifecareApp&…ngularjs.org%2F1.3.0-beta.5%2F%24injector%2pumpr%3Fp0%3D%2524routeProvider……5)
请帮忙=(
我还发现angular 1.0.7没有此错误,而最新的angular 1.2.16和1.3.0有此错误。在主模块中,您需要在新版本的angularjs中包含
ngRoute
依赖项
angular.module('lifecareApp',['ngRoute',…..
还要记住包括路由脚本文件
<script src="angular-route.js">
我尝试将angular route和ngRoute作为一个依赖项,但它仍然会给我带来错误。我还检查了代码中的拼写。好吧!是我这边的一些错误造成了混乱!好吧,它是正确的!哇!谢谢兄弟