0
基本上我不是JS開發人員。但是對於我使用angularjs作爲前端和nodejs作爲後端的應用程序。路由不適用於Angular和nodejs應用程序
在angularjs我寫了一個表單,需要由用戶填寫,一旦用戶填寫表單,他可以使用提交按鈕提交。在提交按鈕點擊事件我寫下面的代碼。
<div class="submit" align="center">
<input type = "submit" value="Submit !" ng-click="addResume()">
</div>
凡addResume()是聲明內部角控制器作爲下面的函數 -
$scope.addResume = function(){
console.log($scope.resume);
$http.post("/Resume", $scope.resume);
};
該函數將調用節點JS服務器上的一個功能。 這隻會在success.html頁面上打印請求字段和路由。請參見下面的代碼this--
app.post('/Resume',function(req,res, next){
console.log(req.body);
// res.render(path.join(__dirname)+'/views/success.html');
next();
})
現在我面臨的問題是,我打不通角表單提交的數據,但是應用沒有關係,T移至成功頁面我想這兩個選項res.render和next()但不能流向成功頁面。
請幫我解決這個問題。
感謝您的回覆。我嘗試了這種方式,但仍然無法正常工作。我改變了控制器中的代碼如下。 $ scope.addResume = function(){ \t \t console.log($ scope.resume); res.render(path.join(__ dirname)+'/ views /('/ success',function(req,res,next){ \t console.log(「Inside the success function。」) ) success.html'); }); \t \t $ http.post( 「/恢復」,$ scope.resume)。然後(功能(響應){ \t \t $ http.get( 「/成功」); \t \t}) 而在我添加的nodejs服務器中。 \t}; 我可以看到console.log($ scope.resume)的控制檯日誌; 但仍然不動。 – rraghuva
Nop這不是這樣做的,$ http.get正在執行一個完全像你的$ http.post一樣的ajax請求。使用$位置爲了移動到正確的頁面。 Angularjs是一個單頁面應用程序,你應該只加載index.html並且永遠不要從它移開。 $ location的文檔https://docs.angularjs.org/#!/api/ng/service/$location – Walfrat
如果你能指點一些書面的例子,這將是一個很大的幫助。 在此先感謝。 – rraghuva