AFAIK,让Angular模仿后退按钮行为的唯一方法是通过调用$window.history.back
。
现在,我有一个带有两个按钮的表单:提交和取消。当我提交时,我有一些自定义逻辑,最后我可以轻松调用back()方法。但是如果没有取消按钮的自定义方法,我怎么能实现相同的目标呢?
这是我目前的html
<div class="form-group">
<button class="btn btn-primary" ng-click="save(berlet)">Ok</button>
<a class="btn btn-warning" ui-sref="jogasok">Cancel</a>
</div>
点击back()
标记时,我希望有<a>
行为。有什么建议吗?我首选的语法是:`Cancel:)
答案 0 :(得分:4)
制定一个简单的指令,让您的控制器免受多余的窗口污染:
的 PLUNKER 强>
app.directive('goBack', function($window){
return function($scope, $element){
$element.on('click', function(){
$window.history.back();
})
}
});
<a go-back>Cancel</a>
答案 1 :(得分:0)
我最好的想法是将$window
服务附加到我的指令,并通过$scope
调用后退按钮。
<a class="btn btn-warning" ng-click="window.history.back()">Cancel</a>
在我的指令中我有
$scope.window = $window;