angularjs – 保持URL params ui-router

前端之家收集整理的这篇文章主要介绍了angularjs – 保持URL params ui-router前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个网络应用程序,在不同的应用程序中有一个入口点.
因此,当用户访问我的应用程序时,他们在URL中有一些参数,如下所示:

http://myapp.com/#/new?param1=value\u0026amp;param2=value2

在我的应用程序中,我有3-4个选项卡,每个选项卡都是自己的状态,可以通过ui-sref =“state”访问

问题是,当我切换到任何这些状态时,我会丢失用户最初输入的参数.

简而言之,当我切换状态时,我想要http://myapp.com/#/differentstate?param1=value\u0026amp;param2=value2而不是http://myapp.com/#/differentstate.

我不知道如何设置……
谢谢!

解决方法

在你的角度应用程序的.run()函数内你可以这样做:(你需要DI $rootScope和$location)

var locationSearch;

    $rootScope.$on('$stateChangeStart',function (event,toState,toParams,fromState,fromParams) {
        //save location.search so we can add it back after transition is done
        locationSearch = $location.search();
    });

    $rootScope.$on('$stateChangeSuccess',fromParams) {
        //restore all query string parameters back to $location.search
        $location.search(locationSearch);
    });

猜你在找的Angularjs相关文章