$location.search() - 如何在 $scope.$watch 函数中使用范围内的参数?

$location.search() - how to use params from scope inside $scope.$watch function?

我需要将函数变量传递给 $scope 并在 $scope.$watch 中重用它。我不知道为什么我的整个 $scope 在第一个例子中总是被重置。

我的问题的活生生的例子: Plunker

工作版本:Plunker

仅在 controller.js

内部进行更改

您在 searchParameters 函数范围内声明 $scope.searchParameters = parameters;。因此,您正在将参数分配给该变量引用。我认为您需要一个单独的函数变量,以及您要设置的对象的单独变量。此外,您需要将函数分配到作用域(函数外),以便在实例化后调用它。