2016-08-22 37 views
1

我剛剛開始使用Angular js。我對此表示懷疑。我想在重定向之後設置flash消息。在angularjs中重定向後設置flash消息

在我的情況下,我有一個表單,並通過http requst保存數據。在成功函數中,我把window.location()。這是另一頁。我想在該頁面中設置一條Flash消息。

JS

$scope.Save_Details = function (id) 
{ 

$http.post(base_url+"sur/sur/save_data/"+id,{data:$scope.Surdata}). 
success(function(response) { 
    // $scope.successTextAlert = "Saved"; 
    // $scope.showSuccessAlert = true; 

    window.location = "#/surpage/nextpage?show_message= true"; 
}); 
} 

新的更新

var messageFlag = $location.search().show_message; 
    if(messageFlag && messageFlag === 'true'){ 
    alert(messageFlag); 
     $scope.successTextAlert = "Saved"; 
     $scope.showSuccessAlertMsg = true; 
    } 

視圖

<div class="alert alert-success" ng-show="showSuccessAlert"> 
      <button type="button" class="close" data-ng-click="switchBool('showSuccessAlert')">×</button> <strong> {{successTextAlert}}</strong> 
     </div> 

誰能幫助我?

+0

將查詢字符串/路由數據標誌傳遞給另一個頁面,讀取標誌並相應地顯示flash消息 – Developer

+0

我不清楚這一點。可以解釋..? – user6721756

+0

1.當您導航到「nextpage」時,沿着 - >#/ surpage/nextpage?show_message = true 2傳遞一個標誌。在「nextpage」控制器中,讀取「show_message」($ location.search()。show_message)的查詢字符串值,如果該值== true,則顯示您的flash消息 – Developer

回答

1

將這個代碼在HTML -

<!-- message text  --> 
<div class=" panel-{{alerts.class}}" ng-show="alerts.messages" > 
    <div ng-repeat="alert in alerts.messages track by $index" class="panel-body alert-{{alerts.class}}" >{{alert}}</div> 
</div> 

放入角模型這個碼 -

$rootScope.alert = function(type,msg){ 
     $rootScope.message.push(msg); 
     $rootScope.alerts = { 
      class: type, 
      messages:$rootScope.message 
     } 
    } 

對於成功的消息 -

$rootScope.alert('success',"Success !!!"); 

對於錯誤消息 -

$rootScope.alert('danger',"Error."); 
+0

類型和味精是什麼?請提供信息 – user6721756

+0

type =是錯誤消息還是成功,並在消息中顯示您想要顯示的消息。 –

0

編輯 - 添加代碼

yourAppModule.controller('nextPageController', function($location){ 

    var messageFlag = $location.search().show_message; 
    if(messageFlag && messageFlag === 'true'){ 
    //show your message 
    } 

}); 
  • 當您導航一起 「下一頁」 通過一個標誌? - >#/ surpage /下一頁show_message =真
  • 在 「下一頁」 控制器,閱讀 「show_message」 查詢字符串值(注$位置控制器,並使用$ location.search()。show_message獲得價值 )
  • 如果該值==ŧ rue,顯示你的flash訊息
+0

請爲這個..i'confused($ location.search()。show_message)添加代碼 – user6721756

+0

@ user6721756 - 將$ location添加到您的控制器。 $ location.search()返回查詢字符串值的對象。 – Developer

+0

value = $ location.search()。show_message; (value == true) { $ scope.successTextAlert =「Saved」; $ scope.showSuccessAlertMsg = true; } – user6721756

0

你可以使用toastr JS專門爲flash。 http://codeseven.github.io/toastr/demo.html

通過使用下面的js代碼,您可以顯示一條flash消息。

For success message: toastr「success」;

對於錯誤消息: toastr「success」;