2013-08-26 82 views
3

Folks我在我的網站上有一個表單,我想要存儲在json文件中的數據。使用資源將數據存儲在Angular的json文件中

這裏是表單代碼:

<form> 
    <input ng-model="obj.firstname"> 
    <input ng-model="obj.lastname">  
    <button ng-click="storedata()">Click here to store data</button>   
</form> 

我的角度代碼如下:

var myApp = angular.module('app', ['ui.bootstrap.dialog','ngResource']); 

myApp.controller('TestCtrl', function($scope,$dialog,TestResource) { 
$scope.obj = {}; 
$scope.obj.firstname = "Mahatma"; 
$scope.obj.lastname = "Gandhi"; 

$scope.storedata = function() { 
    console.log("Storing Data now"); 
    TestResource.save($scope.obj); 
    console.log("Data should have been stored"); 
} 
}); 


myApp.factory('TestResource', ['$resource', function($resource) { 
    return $resource('test.json', {}, {}); 
}]); 

的問題是,該數據不會被存儲。我在這裏錯過了什麼嗎? 這是一個plunkr:http://plnkr.co/edit/gist:3662702

+0

什麼商店是什麼意思?存儲在服務器上?你的意思是要求去嗎? – Chandermani

+0

nopes..just存儲在一個文件..我有一個文件在同一個文件夾名爲test.json – runtimeZero

+0

AngularJS或事實上,JavaScript只能發送數據到服務器,保存邏輯應該在服務器上。 – Chandermani

回答

3

ngResource是一個旨在與RESTful服務器端數據源交互的Angular服務(請參閱ngResource docs)。角度js教程傾向於引用本地JSON文件,因爲它們意味着是獨立的示例,任何人都可以在本地下載和運行而不需要後端服務器。但是您會注意到這些教程僅從JSON文件中讀取數據,他們無法更新它們。

如果您希望保存數據客戶端,請查看LocalStorage(http://diveintohtml5.info/storage.html)。

如果你想保存數據服務器端,你需要設置一些後端服務(通過的NodeJS,PHP,.NET,Ruby的,Python和許多其他框架..)

相關問題