gpt4 book ai didi

javascript - 有没有办法有条件地关闭 Controller 中的 reloadOnSearch?

转载 作者:可可西里 更新时间:2023-11-01 02:47:34 26 4
gpt4 key购买 nike

我有一个 Controller ,我有时使用 $location.search({param1: newParam1Value) 更新位置。

当我故意更改 Controller 中的 $location.search 时,我想防止重新加载。否则,我想保留此路线/状态的默认 reloadOnSearch 行为。

我可以在定义状态时将 reloadOnSearch 设置为 false,但它始终为 false。

有没有办法从 Controller 中为路由切换 reloadOnSearch?或者,我可以保留 reloadOnSearch: true 并只是防止以其他方式重新加载我不希望它发生的一个实例吗?

我正在使用 ui.router

最佳答案

是的!!您可以有条件地使用 reloadOnSearch。我们知道状态会通过 $location.search() 事件重新加载。如果您的用例是这样的,在某些情况下您想要重新加载状态,而在其他情况下您不想重新加载状态,那么请像这样使用 reloadOnSearch:

$scope.myClickEvent = function () {
// prevent a reload
$state.current.reloadOnSearch = false;
$location.search('page', 2);

// Do your code...

loadData();
}

/*加载数据的 API 调用*/

var function loadData() {
// Do your code...

// Allow to reload state
$state.current.reloadOnSearch = undefined;
}

关于javascript - 有没有办法有条件地关闭 Controller 中的 reloadOnSearch?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22212496/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com