【发布时间】:2014-04-16 05:08:43
【问题描述】:
我是 AngularJS 的新手,我想了解如何正确地将模型与控制器分开。到目前为止,我一直在使用控制器内的模型。例如:
angular.module("app").controller("customerController", ["Customer", "$scope", "$routeParams",
function (Customer, $scope, $routeParams){
$scope.customer = Customer.find({ID:$routeParams.ID});
}]);
此函数从数据库中检索客户并将该客户公开给视图。但我想更进一步:例如,我可能需要封装一些东西或创建一些有用的函数来从数据库中包含的行数据中抽象出来。比如:
customer.getName = function(){
//return customer_name + customer_surname
};
customer.save = function(){
//save the customer in the database after some modifies
};
我想为客户创建一个模型并在许多控制器中重用该模型。也许然后我可以为客户创建一个列表,其中包含从数据库或其他东西中检索所有客户的方法。
总之,我希望有一个模型来反映数据库实体(如上面的客户),并具有与之交互的属性和方法。也许是一个创建客户或客户列表的工厂。如何在 AngularJS 中完成这样的任务?我想从你那里得到一些关于这个问题的建议。一个简单的例子将非常有用,或者是一个理论上的答案,可以帮助我理解在 Angular 中处理此类问题的正确方法。谢谢,祝你工作顺利。
【问题讨论】:
标签: javascript php html angularjs model-view-controller