Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用隐藏的查询参数重新加载angularjs应用程序?_Angularjs - Fatal编程技术网

如何使用隐藏的查询参数重新加载angularjs应用程序?

如何使用隐藏的查询参数重新加载angularjs应用程序?,angularjs,Angularjs,我有一个访问angularjs应用程序的链接,如下所示: 127.0.0.1:9000/#/doc?abc=def 当用户打开该链接时,他/她打开应用程序。加载应用程序并成功提取查询参数后,我使用以下代码隐藏这些查询参数: $location.search(""); 现在,地址栏中的链接切换到127.0.0.1:9000/#/doc。如果用户重新加载页面(通过F5或浏览器的“重新加载”按钮),我希望在加载之前使用隐藏参数重新加载应用程序。如何才能做到这一点?您必须存储隐藏的参数,然后在重新加

我有一个访问angularjs应用程序的链接,如下所示:

127.0.0.1:9000/#/doc?abc=def
当用户打开该链接时,他/她打开应用程序。加载应用程序并成功提取查询参数后,我使用以下代码隐藏这些查询参数:

$location.search("");

现在,地址栏中的链接切换到127.0.0.1:9000/#/doc。如果用户重新加载页面(通过F5或浏览器的“重新加载”按钮),我希望在加载之前使用隐藏参数重新加载应用程序。如何才能做到这一点?

您必须存储隐藏的参数,然后在重新加载事件之前恢复这些参数。由于无法实际捕获重新加载事件,因此必须依靠在卸载窗口之前(当用户离开页面或重新加载页面时)触发的事件来重新加载这些参数

$window.onbeforeunload=函数(){
//在此处恢复参数

};

显然,您需要将查询字符串存储在某个位置,例如cookie、本地存储或服务器上。哇,这个解决方案适用于我的情况。我甚至没有想到onbeforeunload事件。谢谢