在 angular js 中捕获 URL 中的组件状态的推荐方法是什么

What is the recommended approach of capturing the state of the component in URL in angular js

我有一个可重复使用的小部件,它有自己的状态。在我的例子中,状态由 搜索栏的内容 (2) 一个或多个 select 框 (1)、以及用户可以选择当前活动元素的 树 (3).

我想实现可以做两件事的 locationManager:

我想知道是否有某种特定于 angular 应用程序的设计模式来解决这个问题。我的想法是使用事件来传达状态:每次小部件的状态发生变化时,它都应该发出事件,该事件将被位置管理器捕获,并且 URL 将相应地设置。有没有更好的办法?

UPD:问题主要是关于 AngularJS 1,但是 Angular2 解决方案也很受欢迎。

您需要使用服务 ActivatedRoute 中的 queryParams。 Update query params in the browser url

Make behavior for chnging queryParams