MemberService.js
var MemberService = angular.module('MemberService', []); MemberService.factory('MemberFactory', ['$q', '$http', function ($q, $http) { var memURL = 'http://localhost:3000/apiserv/members/'; return { getMembers: function () { var deferred = $q.defer(); $http({ method: 'GET', url: memURL, headers: {'Content-Type': 'application/json'} }).success(function (data, status, headers, config) { console.log(data); deferred.resolve(data); }).error(function (data, status, headers, config) { deferred.reject(status); }); return deferred.promise; } }; }]);
app.js (don't forget to include the MemberService module in your application dependency)
var app = angular.module('application', ['MembersList', 'MemberService']); $stateProvider.state('app.allmembers', { url: '/members/members-list', templateUrl: 'tpl/members/membersList.html', resolve: { membersData: ['MemberFactory', function(MemberFactory { return MemberFactory.getMembers(); } } })
memberListCtrl.js
var MembersList = angular.module('MembersList', []); MembersList.controller('MembersListController', ['$scope', 'GlobalService', 'membersData' function ($scope, GlobalService, membersData) { $scope.tbOptions = { data: membersData, aoColumns: [ {mData: 'title'}, {mData: 'firstName'}, {mData: 'lastName'}, {mData: 'email'} ], aoColumnDefs: [ { aTargets: [3], mRender: function (data, type, full) { return '<a href="mailto:' + data + '" style=color:red;>' + data + '</a>'; } }, { aTargets: [1], mRender: function (data, type, full) { return '<a href="#/app/members/update-member/' + full._id + '" style=color:blue;>' + data + '</a>'; } } ] }; }]);
here's the gist: https://gist.github.com/senayar/d2e2b09fdf475088a71d
If you still have problems, show your service and controller.