AngularJS $location 不改变路径
AngularJS $location 不改变路径
我在提交表单后更改页面URL的问题上遇到了困难。
这是我的应用程序流程:
- 路由被设置,URL被识别为某个表单页面。
- 页面加载,控制器设置变量,指令被触发。
- 一个特殊的表单指令被触发,它使用AJAX执行特殊的表单提交。
- 在执行AJAX之后(Angular不处理AJAX),回调会被触发,指令调用
$scope.onAfterSubmit
函数来设置位置。
问题在于设置位置后什么也没有发生。我已经尝试将位置参数设置为/
... 不行。我也试过不提交表单。没有任何效果。
我已经测试是否能够到达onAfterSubmit
函数(它确实可以)。
我的想法是函数作用域会被改变(因为它是从指令中调用的),但是如果作用域改变了,它怎么能调用onAfterSubmit
呢?
这是我的代码:
var Ctrl = function($scope, $location, $http) { $http.get('/resources/' + $params.id + '/edit.json').success(function(data) { $scope.resource = data; }); $scope.onAfterSubmit = function() { $location.path('/').replace(); }; } Ctrl.$inject = ['$scope','$location','$http'];
有人可以帮帮我吗?
admin 更改状态以发布 2023年5月21日