[英]Payment Success Page AngularJS
正確的AngularJS方法是什么?
我的頁面接受一些用戶信息和付款(通過Stripe)。
付款成功后,我需要向用戶顯示一條消息,表明已被接受。
我是否將兩個視圖合並在同一個局部視圖中(我懷疑不是),然后根據某個范圍變量(即$scope.paymentAccepted
的狀態顯示一個$scope.paymentAccepted
。
<form ng-if='!paymentAccepted'>
...
</form>
<div id='paymentSuccess' ng-if='paymentAccepted'>
<p>Your payment has been accepted</p>
</div>
還是使用$location
服務提供商將用戶定向到另一個位置,然后從那里使用單獨的視圖和控制器(我懷疑是這樣)。
稱其為挑剔,但我想阻止用戶直接訪問我的付款頁面,這就是為什么我很想這樣做的原因。
解決這個問題的正確方法是什么?
如果您使用ui-router,則您的付款狀態的子狀態可能無法通過URL尋址。 然后,您只需要向控制器注入$ state並在成功完成付款后過渡到相關狀態,例如$state.go('home.payment.success')
。
編輯:您實際上將子狀態引用為$state.go('.success')
您要從父狀態過渡(在此示例中為“ home.payment”)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.