无法将数据推送到JSON文件AngularJS

时间:2015-03-10 06:11:23

标签: json angularjs ionic-framework

我刚刚开始学习Angular js。我发现很难将数据添加到现有的JSON文件中。

这是我的JSON文件

{"response":[ {
"Cust_Fname":"Jack",
"Cust_Lname":"Nicolson",
"Cust_Dob":"24/09/1992",
"Cust_Mob":"0987654321",
"Cust_Email":"abc@xyz.com"
},
{
"Cust_Fname":"tom",
"Cust_Lname":"cruise",
"Cust_Dob":"19/01/1990",
"Cust_Mob":"1234567890",
"Cust_Email":"sss@gmail.com",
}
]
}

这是我推送数据的AngularJS代码

$scope.saveContact = function(contact){
$http.post('/data/Cust_Dtls.json',contact).success(function(data, status, headers, config){
                console.log(data)});
            }

这是我的HTML文件

<ion-content  class="item-noborder base-bg" overflow-scroll="true" padding="true">
        <div class="row" >
            <div class="col-50 pane-top-padding-20" style="padding-left:10px"><a class="button button-icon button-positive ion-arrow-left-c" href="#/tab/contacts">&nbsp;Back to Contacts</a></div>
            <div class="col-50 pane-top-padding-20 text-right"><a class="button button-icon button-positive ion-checkmark text-right" href="#/tab/contacts" ng-click="saveContact(contact)">&nbsp;Save</a></div>
        </div>



    <div  id="contact-div">

        <label class="item">
            <span class="input-label">First Name</span>
            <input type="text" placeholder="First Name" ng-model="contact.Cust_Fname">
        </label>
        <label class="item">
            <span class="input-label">Last Name</span>
            <input type="text" placeholder="Last Name" ng-model="contact.Cust_Lname">
        </label>
        <label class="item">
            <span class="input-label">Email</span>
            <input type="text" placeholder="Email" ng-model="contact.Cust_Email">
        </label>
        <label class="item">
            <span class="input-label">Phone</span>
            <input type="text" placeholder="Phone" ng-model="contact.Cust_Mob">
        </label>
        <label class="item">
            <span class="input-label">Date Of Birth</span>
            <input type="text" placeholder="DOB" ng-model="contact.Cust_Dob">
        </label>
    </div>
</ion-content>

我可以使用$http.get读取数据,但我无法推送数据,也没有任何错误弹出。所以我无法知道该怎么做。

谢谢

2 个答案:

答案 0 :(得分:1)

我认为你的意思是http的后​​置动词而不是推送

格式取自角点:

// Simple POST request example (passing data) :
$http.post('/someUrl', {msg:'hello word!'}).
  success(function(data, status, headers, config) {
    // this callback will be called asynchronously
    // when the response is available
  }).
  error(function(data, status, headers, config) {
    // called asynchronously if an error occurs
    // or server returns response with an error status.
  });

因此,您需要按照以下方式联系您的代码:

$http.post('/data/Cust_Dtls',{contact:contact}).success(function(data, status, headers, config){
            console.log(data)});
}

您需要发布到网址而不是json平面文件。

答案 1 :(得分:0)

你正在做同样的错误。您尝试使用$ http服务将数据发布到本地文件。您无法执行此操作。 $ http服务用于服务器 - 客户端通信。使用localstorage或sqlite之类的服务。

希望这有帮助