小编min*_*cem的帖子

Angular UI Router Reload Controller on Back Button Press

我有一个可以有许多可选查询参数的路由:

$stateProvider.state("directory.search", {
                url: '/directory/search?name&email',
                templateUrl: 'view.html',
                controller: 'controller'
Run Code Online (Sandbox Code Playgroud)

当用户填写表单以搜索目录时,函数会$scope更改导致控制器重新加载的状态:

 $scope.searchDirectory = function () {
            $state.go('directory.search', {
                name: $scope.Model.Query.name,
                email: $scope.Model.Query.email
            }, { reload: true });                   
        };
Run Code Online (Sandbox Code Playgroud)

controller我有一个条件:if($state.params){return data}指示我的服务是否将被查询.

除非用户点击浏览器的前进和/或后退按钮,否则此功能非常有效.在这两种情况下,状态(路由)都会正确更改查询参数,但不会重新加载controller.

根据我的阅读,只有在实际路线发生变化时才会重新加载控制器.反正有没有让这个例子只使用查询参数工作,还是我必须使用不断变化的路线?

angularjs angular-ui angular-routing

6
推荐指数
1
解决办法
1万
查看次数

标签 统计

angular-routing ×1

angular-ui ×1

angularjs ×1