10,606
社区成员
发帖
与我相关
我的任务
分享
angular.module("endpoint", []).service("endpointConfig", function () {
var self = this;
var siteUrl = "/";
self.getUser = {
url: siteUrl + "static/common/json/user.json",
method: "GET"
};
});
var userModule = angular.module("userModule", ["endpoint"]);
userModule.factory("userModel", function ($http, endpointConfig) {
var userModel = {};
userModel.query = function () {
$http({
url: endpointConfig.getUser.url,
method: endpointConfig.getUser.method,
data: {
}
}).success(function (data, header, config, status) {
//响应成功
debugger;
return data;
}).error(function (data, header, config, status) {
//处理响应失败
return data
});
//return {firstName:"static-johnny",lastName:"Yin",email:"adfsd@qq.com"};
};
return userModel;
});
userModule.controller("userController", function ($scope, userModel) {
debugger;
$scope.model = userModel.query();
});
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no" />
<meta name="keywords" content="" />
<meta name="description" content="" />
<link href="static/common/plugins/bootstrap/bootstrap.min.css" rel="stylesheet" />
</head>
<body ng-app="userModule" ng-controller="userController">
<div class="jumbotron">
<input class="form-control" value="" ng-model="model.firstName" />
<h1>First Name:<span ng-bind="model.firstName"></span></h1>
<h1>Last Name:<span ng-bind="model.lastName"></span></h1>
<h1>Email:<span ng-bind="model.email"></span></h1>
</div>
<script src="static/common/plugins/angular/angular.min.js"></script>
<script src="static/common/js/app/services/endpoint.js"></script>
<script src="static/common/js/app/modules/userModule.js"></script>
<script src="static/common/js/app/controllers/userController.js"></script>
</body>
</html>
.controller('Ctrl', function($scope,Api) {
Api.getDetail().then(function(res){
$scope.data=res.data
});
})
myapp.service('userInfo',['$http','$q',function($http,$q){
var userInfo={};
return {
getUserInfo:function(){
// 如果已存在则直接返回
if(userInfo.name){
return $q.when(userInfo);
}
//如果不存在数据则加载
return $http.get('url').then(function(res){
// 把数据存到server中并返回
.userInfo=res.data;
return res.data;
})
}
}
}]);
然后在ctrl中接收
myapp.controller('xxxCtrl',['userInfo', '$scope',function(userInfo, $scope){
userInfo.getUserInfo().then(function(res){
$scope.userInfo=res;
});
}]);
var userModule = angular.module("userModule", ["endpoint"]);
userModule.factory("userModel", function ($http, endpointConfig) {
var userModel = {};
userModel.query = function () {
//$http({
// url: endpointConfig.getUser.url,
// method: endpointConfig.getUser.method,
// data: {
// }
//}).success(function (data, header, config, status) {
// //响应成功
// debugger;
// return data;
//}).error(function (data, header, config, status) {
// //处理响应失败
// return data
//});
return {firstName:"static-johnny",lastName:"Yin",email:"adfsd@qq.com"};
};
return userModel;
});