Angularjs $location.search实现URL保存搜索条件

当查询条件较少且固定时,推荐使用路由方式比较简便。当搜索条件多且不定的情况下,可使用该方法。

  1. 页面刷新初始化一次查询initSearch() #L37
  2. 搜索和浏览器前进后退的查询都用$locationChangeSuccess事件,回调执行 initSearch() #L16
  3. 搜索的$locationChangeSuccess事件由执行$location.search(option)方法触发#L23
  4. 我们把查询事件的异常处理提取到jmSearch服务当中,该服务由jmui管理
  5. 需要保存搜索条件的页面在controller中注入jmSearch服务 #L6
  6. jmSearch需要传入当前$scope和查询的方法initSearch #L39
  7. 页面路由需配置reloadOnSearch: false, 防止刷新页面 search.js#L6

参考:ng-seed /search模块

坚持原创技术分享,您的支持将鼓励我继续创作!