Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJS,将数据保存在json中并检索,从而允许angular重建动态表_Javascript_Angularjs_Persistence - Fatal编程技术网

Javascript AngularJS,将数据保存在json中并检索,从而允许angular重建动态表

Javascript AngularJS,将数据保存在json中并检索,从而允许angular重建动态表,javascript,angularjs,persistence,Javascript,Angularjs,Persistence,各位早上好: 我的angular应用程序是一个餐厅经理。在后台,它显示了一个餐厅送货经理,在那里可以管理送货成本。我在后端ui中为用户(餐厅管理员)提供了添加送货方式和地点的选项,因此每个组合都有一个价格,并保存到json中,并使用ng repeat显示在输入下方的表格中 我的json是这样的: { "deliveryLocation": [ { "id": 1,

各位早上好: 我的angular应用程序是一个餐厅经理。在后台,它显示了一个餐厅送货经理,在那里可以管理送货成本。我在后端ui中为用户(餐厅管理员)提供了添加送货方式和地点的选项,因此每个组合都有一个价格,并保存到json中,并使用ng repeat显示在输入下方的表格中

我的json是这样的:

{
  "deliveryLocation": [
                       {
                         "id": 1,
                         "location": "downtown"
                       }
                      ],
  "deliveryMethods":    [
                         {
                           "id": 1,
                           "name": "Delivery Boy"
                         },
                         {
                           "id": 2,
                           "name": "Cab"
                         }
                        ],
  "combinations":       []

}
因此,当您填充输入时,至少会有一个组合,例如:“闹市区-出租车”。该组合将以“组合”(见json)的形式存储,格式如下:“deliveryLocation”:“deliveryMethods”:“price”:0

其中,价格将是组合表中的空输入。因此,用户将指示该交付将花费多少成本,以及将在组合数组中节省多少成本。(例如:“交货地点”:“市中心”,“交货方式”:“出租车”,“价格”:50)

当用户保存表时,我必须将数据发送到后端。当用户再次打开delivery manager时,应用程序将从后端接收数据,将接收相同的json,恢复deliveryLocations和deliveryMethods。这非常简单,但是我应该如何向AngularJS指出,在组合字段中找到的所有内容都是引用的组合?(deliveryLocation和deliveryMethods)

非常感谢


Guillermo

第一个例子看看这个好例子:

此示例演示如何使用angularjs将JSON对象转换为表

因此,您需要做的是:

1) 使用angular,通过使用某些工厂将表对象发送到(假设为PHP)服务器端到DB:

module.factory('ajax_post', ['$http',  function(_http) {   

var path = 'src/php/data.ajax.php'; // example

return{
    init: function(jsonData){
        var _promise= _http.post(path, 
            jsonData
            ,{
                headers: {
                    'SOAPActions': 'http://schemas.microsoft.com/sharepoint/soap/UpdateListItems'
                }
            }
            );            
        return _promise; 
    }
  }   
}]);

用同样的方法从数据库加载表。

不清楚您在问什么。为什么AngularJS应该知道某些对象是相关的?为什么要存储对象的全名而不是ID?如果位置和交付方法名称是唯一的,为什么您需要ID?请删除您的逻辑描述。没有人会读你所有的帖子。谢谢你的回答,另一方面,我会接受你的一些建议。用户可以创建一个交付选项表,以显示给用户。因此,假设您第一次访问,并添加一个目的地、一个方法,然后在下表中添加价格。该表将反映您输入中的任何更改,因此如果您更改目的地名称,它将在您的表中更改。非常感谢!我会试试Maxim,我终于解决了我的问题。我所做的:当用户提交表单时,angular表中的所有数据都作为json(通过方法处理)发送,只是原始数据,而不是散列键。当我从服务器获取信息时,我会向后处理数据,以满足构建动态表的需要。非常感谢你的帮助。