我在员工管理应用中使用角度js。我可以从couchdb生成一个JSON,如下所示:
[
{
"id": "123",
"name": "Henry",
"address": "HSR"
},
{
"id": "456",
"name": "Erik",
"address": "Kormangala"
}
我甚至可以在Firebug的NET面板中看到加载的JSON。 这是我的角度JS文件: Employee_Manager_App.js:
var EMApp= angular.module('EMApp', ['employeeProvider']).config(function ($routeProvider){
$routeProvider.when("/", {
templateUrl: '../EMApp/resources/html/login.html',
controller: 'LoginController'
});
$routeProvider.when("/home",{
templateUrl : '../EMApp/resources/html/home.html',
controller: 'HomeController'
});
$routeProvider.otherwise({redirectTo: '/' });
});
EMApp.controller('LoginController', function($scope, $location){
$scope.login = function(){
if($scope.credentials.username === "admin" && $scope.credentials.password === "1234")
$location.path('/home');
else
alert("Username should be admin & Password should be 1234");
};});
EMApp.controller('HomeController', function($scope, Employees){
$scope.employeeRes = Employees.query();
console.log($scope.employeeRes);});
employee_provider.js:
angular.module('employeeProvider',['ngResource']).
factory('Employees', function($resource){
var Employees = $resource('http://localhost\\:5984/myapp/_design/mydesign/_show/employee_shows/9351c38f9a64fd26e40b2ac4cf012efe?name=:value', {value : "employees"}, {query : {method : 'JSONP'}});
return Employees;
});
即使我可以看到JSON作为回复,但在我使用'employeeRes'的html页面上没有看到员工详细信息。
有人看错了吗?请指正。提前谢谢。
答案 0 :(得分:0)
在致电$resource
时,您将使用自己的操作覆盖默认的query
操作,但不会告诉它预期结果会出现在数组中。
我猜你没有看到结果,因为你试图用ng-repeat迭代它们。
尝试添加isArray
标记:
var Employeees = $resource(
url,
{value: 'employees'},
{query: {method: 'JSONP', isArray: true}}
);