是否可以使用 $route 在 AngularJS 中指定过滤器的内容
Is it possible use $route to specify the contents of a filter in AngularJS?
我正在制作一个使用ng-repeat和过滤器组合作为简单类型的控制器的angularJS应用程序。我这样做是为了让用户可以搜索和点击网站。
我的侧边栏导航如下所示:
<li><a ng-click="navFilter = {type: 'section1'}" >Section 1</a></li>
<li><a ng-click="navFilter = {type: 'section2'}" >Section 2</a></li>
<li><a ng-click="navFilter = {type: 'section3'}" >Section 3</a></li>
这也适用于搜索过滤器:
<input ng-click="Filter = null" type="text" ng-model="searchFilter">
当用户单击搜索框时,"过滤器"由侧边栏导航触发的过滤器设置为 null,用户可以搜索网站的所有内容。
<div ng-repeat="item in items | filter:navFilter | filter:searchFilter">
<div>{{item.title}}</div>
<div>{{item.body}}</div>
</div>
我担心当用户点击后退按钮时会发生什么。是否有一种"角度"方法来配置路由器,以便在用户回击时,URL 会导致过滤器进入其先前状态?
如果要支持浏览器按钮,最好在查询字符串参数中添加筛选器。然后使用$routeParams
提取要应用的筛选器。使用这些路由参数在控制器中设置searchFilter
和navFilter
。
这会导致视图重新加载,但这可以通过设置 $routeProvider
reloadOnSearch=false
来修复。请参阅此处的文档
相关文章:
- Angularjs-utils高亮过滤器在搜索时破坏应用程序
- Angularjs通过过滤器获取indexOf
- 使用javascript或angularjs特定过滤器搜索字符串中第一个img标记的json值
- angularjs ng基于点击时的数组值重复过滤器
- 使用angularjs内置过滤器过滤代码中的特定属性
- AngularJS Linky过滤器停止传播
- 自定义angularjs过滤器日期时间格式额外字符
- AngularJS自定义过滤器未触发点击事件
- AngularJS中货币过滤器的Javascript代码无法使用自定义符号
- 如何在 AngularJS 中的过滤器中使用参数
- 简单顺序通过过滤器在 AngularJs 中不起作用
- AngularJS中的严格模式过滤器
- 用于分页的 AngularJS 自定义过滤器
- 无法获取过滤器以在 AngularJS 中执行
- 两个日期之间的自定义过滤器 AngularJS
- 过滤器 AngularJS REST JSON 数据:错误:badcfg 响应与配置的参数不匹配
- 在选择框中选择一个具有过滤器Angularjs的选项
- 过滤器angularjs不'对我来说不起作用
- 按数字范围过滤,自定义过滤器 - AngularJS
- 注入HTML过滤器- angularJS