2014-12-19 2 views
0

Angular JS를 처음 사용하고 다른 서버 측 언어를 사용하지 않고 AngularJs와 Json을 자바 스크립트로 사용하여 CRUD 양식을 만들려고합니다. 스크립트는 정상적으로 작동하지만 동일한 디렉토리의 동일한 서버에있는 JSON 파일에 데이터를 쓸 수 없습니다. 나는 xamp를 사용하고있다. 여기에 코드입니다 : 당신은 잘못하고AngularJs와 javascript를 사용하여 json 파일로 데이터 푸시

<!DOCTYPE html> 
    <html> 
    <head> 
     <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.5/angular.min.js">  </script> 
    </head> 

    <body ng-app="myapp"> 
    <div ng-controller="MyController" > 
    <form> 
     <input type="text" id="name" ng-model="myForm.name" ng-minlength="5" ng-maxlength="12"> Name <br/> 
     <select ng-model="myForm.car"> 
     <option value="nissan">Nissan</option> 
     <option value="toyota">Toyota</option> 
     <option value="fiat">Fiat</option> 
     </select> 

     <button ng-click="myForm.submitTheForm()">Submit Form</button> 
    </form> 

    <div> 
     {{myForm.name}} 
    </div> 
    <div> 
     {{myForm.car}} 
    </div> 
    </div> 

    <script> 
    angular.module("myapp", []) 
    .controller("MyController", function($scope, $http) { 
     $scope.myForm = {}; 
     $scope.myForm.name = "Jakob Jenkov"; 
     $scope.myForm.car = "nissan"; 
    console.log("Submitting form"); 
    $scope.myForm.submitTheForm = function(item, event) { 
     console.log("Submitting form"); 
     var dataObject = { 
      Name : $scope.myForm.name 
      ,City : $scope.myForm.car 
      ,Country : "India" 
     }; 

     var responsePromise = $http.post("data.json", dataObject); 
     responsePromise.success(function(dataFromServer, status, headers, config) { 
      console.log(dataFromServer.title); 
     }); 
     responsePromise.error(function(data, status, headers, config) { 
      alert("Submitting form failed!"); 
     }); 
    } 

     $http.get('data.json').then(function(data) { 
    console.log(data); 
    }); 

    }); 
</script> 
</body> 

+0

노드 또는 PHP와 같은 서버 측 언어없이 CRUD 작업을 수행 할 수 없습니다 .... –

+0

마지막으로 답변을 찾았습니다. PHP를이 서버 측 언어로 사용합니다. 우리는 다른 서버 측 언어도 사용할 수 있습니다. – mikelee

답변

1

. 백엔드에는이 API가 있어야합니다. 당신은 expressjs을 사용할 수 있습니다 - 그것은 매우 간단하다 :

app.post('cars/', function(req, res) { 
    writeToFile('data.json', req.body); // I do not know how to write files, something like this 
    res.send(); 
}) 
+0

무엇이'writeToFile ('data.json', req.body);' –

0

나는 당신이 JSON 파일에 아무것도 게시 할 수 있다고 생각하지 않기 때문에 서버는 단지 파일이 아닌 것을 (API의 URL).

관련 문제