Javascript 使用notify false访问$state.go()上的解析数据

Javascript 使用notify false访问$state.go()上的解析数据,javascript,angularjs,angular-ui-router,Javascript,Angularjs,Angular Ui Router,我有一张交互式地图,上面有相关的类别和标记。 我还有一个搜索表单,允许用户搜索标记 当用户单击要显示的结果时,我希望: 将URL更改为相关类别URL 显示与标记相关的类别 打开弹出标记 这是密码 route.js searchController.js 一切都按预期进行,URL被更改,API被调用等等。。。 唯一的问题是我不知道如何从APIRestResolver(由“app.category”路由调用)检索API数据 如果你有任何线索,或者如果我做错了什么,请帮助我:) 谢谢 您将apiR

我有一张交互式地图,上面有相关的类别和标记。 我还有一个搜索表单,允许用户搜索标记

当用户单击要显示的结果时,我希望:

  • 将URL更改为相关类别URL
  • 显示与标记相关的类别
  • 打开弹出标记
  • 这是密码

    route.js

    searchController.js

    一切都按预期进行,URL被更改,API被调用等等。。。 唯一的问题是我不知道如何从APIRestResolver(由“app.category”路由调用)检索API数据

    如果你有任何线索,或者如果我做错了什么,请帮助我:)


    谢谢

    您将
    apiRequest
    对象注入控制器,它将包含$http.get请求的响应。@Chandermani已经尝试过了,但我在searchController中,无法传递app.category状态的解析程序,我有一个错误(“未知提供程序:您应将apiRequest注入的apiRequestProvidercategoryController@RaeefRefai情况已经如此,我的categoryController工作正常,但如果使用“notify:false”,则不会调用categoryController
    $stateProvider
        .state('app', {
            url: '',
            abstract: true,
            templateUrl: basepath('app.html'),
            controller: 'AppController'
        })
        .state('app.category', {
            url: '/c-{categoryId}',
            templateUrl: basepath('pages/category.html'),
            controller: 'categoryController',
            resolve: {
                apiRequest: function($http, $stateParams) {
                    return $http.get(App.API_URL + "category/" + $stateParams.categoryId);
                }
            }
        })
    ;
    
    app.controller('searchController', ['$scope', '$state',
        function ($scope, $state) {
        'use strict';
    
        // callback when the user click on a marker in the search box
        $scope.onSearchSelect = function ($item) {
            $state.go('app.category', {
                categoryId: $item.categoryId
            }, {
                location: "replace",
                inherit: false,
                notify: false
            }).then(function(response) {
                // response
                // would like to access apiRequest data here
                // to display the category + markers + open the popup
            });
        };
    }]);