我刚刚开始学习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"> 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)"> 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
读取数据,但我无法推送数据,也没有任何错误弹出。所以我无法知道该怎么做。
谢谢
答案 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之类的服务。
希望这有帮助