使用 AngularJS 的 adding/editing 数据的最佳实践
Best practices for adding/editing data using AngularJS
我目前正在使用 AngularJS 开发 SPA 应用程序,它允许最终用户通过表单添加和编辑订单。
我想知道什么是确定应用程序处于 Edit
或 Create
状态的最佳实践?
例如,当我单击显示为 'Add New Order' 的菜单项时,我希望显示一个名为“order.html”的部分视图,其中所有输入字段均为空白。如果可能的话,我还想在编辑订单时重新使用相同的视图,其中的输入字段是根据当前正在编辑的订单预先填写的。
我是否需要使用 service/factory
来确定状态,例如:
angular.module('app')
.factory('orderService', ['$http', function($http) {
var state = {
addOrder: false,
order: {
orderRef: "",
orderDate: ""
}
};
}]);
然后我可以根据编辑状态从相关控制器中设置addOrder
属性,并在order
属性中填写详细信息addOrder: true
.
时的顺序
我在网上看了一圈,不幸的是这样的例子似乎很少。
我目前正在使用一项服务 (DataRepo
),该服务存储您希望在全球范围内保留的所有数据。例如,您有一个 input
,用户可以在其中输入一些关于他们订单的旁注,如果他们导航回到这个站点,他们可能会再次看到他们的文本。
<input type="text" ng-model="DataRepo.orderNotes">
在您的控制器中,您注入 DataRepo
服务并将其绑定到范围:
$scope.DataRepo = DataRepo;
这样做,用户输入将自动存储到 DataRepo
服务中。
我目前正在使用 AngularJS 开发 SPA 应用程序,它允许最终用户通过表单添加和编辑订单。
我想知道什么是确定应用程序处于 Edit
或 Create
状态的最佳实践?
例如,当我单击显示为 'Add New Order' 的菜单项时,我希望显示一个名为“order.html”的部分视图,其中所有输入字段均为空白。如果可能的话,我还想在编辑订单时重新使用相同的视图,其中的输入字段是根据当前正在编辑的订单预先填写的。
我是否需要使用 service/factory
来确定状态,例如:
angular.module('app')
.factory('orderService', ['$http', function($http) {
var state = {
addOrder: false,
order: {
orderRef: "",
orderDate: ""
}
};
}]);
然后我可以根据编辑状态从相关控制器中设置addOrder
属性,并在order
属性中填写详细信息addOrder: true
.
我在网上看了一圈,不幸的是这样的例子似乎很少。
我目前正在使用一项服务 (DataRepo
),该服务存储您希望在全球范围内保留的所有数据。例如,您有一个 input
,用户可以在其中输入一些关于他们订单的旁注,如果他们导航回到这个站点,他们可能会再次看到他们的文本。
<input type="text" ng-model="DataRepo.orderNotes">
在您的控制器中,您注入 DataRepo
服务并将其绑定到范围:
$scope.DataRepo = DataRepo;
这样做,用户输入将自动存储到 DataRepo
服务中。