AngularJS RESTful Web 服务 - 添加行到 table 而不刷新

AngularJS RESTful Web Service - Add row to table without refresh

我正在尝试在保存新对象后向 table 添加新行。 范例如下:

var demoApp = angular.module("demoApp", ["ngResource"]);

// Controller
demoApp.controller("saveCategoryController", function($scope, saveCategoryService, categoriesService){
    $scope.categories = categoriesService.query();

    $scope.createCategory = function(){
        saveCategoryService.saveCategory($scope.category);
        // I want to avoid this method to refresh my table.
        // $scope.categories = categoriesService.query();

    };    
});

// Factory
demoApp.factory("saveCategoryService", function($resource){
    return $resource("/demopro/saveCategory", {}, {
        saveCategory: {
            method: "POST"
        }
    });
});

demoApp.factory("categoriesService", function($resource){
    return $resource("/demopro/categories", {}, {
        listAllCategories : {
            method: "GET",
            isArray: true
        }
    });
 });

有什么方法可以在不再次查询我的数据库的情况下在我的 table 中显示新行吗?

是的,逻辑上你会 return 保存对象并将其添加到当前列表:

$scope.createCategory = function(){
        var newCategory = saveCategoryService.saveCategory($scope.category);
        $scope.categories.push(newCategory);     
};