ionic1 过滤器代码

angularJS 中的过滤器真的很强大。有时间可以好好静下来研究它的功能。
直接说思路
先写好html界面,代码有贴出部分,这些有点基础的都写的出来。

这个功能的核心在于双向数据绑定。
通过 ng-model= "searchCont.key" 我们可以很容易得的我们输入的类容,有一个关键点 这个model在js中必须是个Object。
看我js代码 你会发现,代码真的少。
ng-repeat="item in testData | filter:searchCont.key"过滤器在这段代码中的作用体现出来了。我们仅仅是利用了filter 对searchCont.key进行判断过滤。就可以得到以下的过滤效果。

这里要对js有一定的认识 有几个知识点
① 看到js代码 我们会发现 我根本没有写key 这个属性。这个key是js 的object的特性
你可以随时对object添以随时对object添加对象,你也可以定义为txt。这个key并不是js object的keys属性
②就是对filter的理解,过滤器是通过这个key值去过滤对象的 也就是item对象所以当你需要过滤特定的对象的时最好还是自己写一个过滤器。举个例子如果item 带一个隐藏的 用户不可见的参数 如果在搜索栏上输入了还是会查找出来的,这个地方是需要注意的。
③为什么要写这个,因为有个王八蛋这个功能居然收$9 气不过。无需引入多余的js代码,怕有人上当就写了这篇博客。
④那些上当的人有时候也不知道说什么好,学的时候不用心。教程上也有讲到过滤器的使用,其中一个例子就是这个功能。


贴出代码供大家参考。因为懒,所以就没做代码整理。哈哈。
html

<!--模糊查询搜索框-->
< label class= "item item-input-wrapper" style= " margin-left : 2 em ; background : #FFFFFF " >
< i class= "icon ion-ios-search placeholder-icon" ></ i >
< input type= "search" placeholder= "请输出您想查找的内容" ng-model= "searchCont.key" style= " width : 100 % " >
< i class= "icon ion-close-circled placeholder-icon" style= " vertical-align : middle ; "
on-tap= "clearSearch()" ng-if= " searchCont .key.length" ></ i >
</ label >
-----------------------------------------------------------------------------
< div class= "item row" ng-repeat= " item in testData | filter : searchCont .key" ng-click= " lookupInfor ( item )" >
< div class= "col item-text-wrap" style= " text-align : left ; font-size : 0.9 em ; " >
< h2 > {{ item .title}} </ h2 >
< p > {{ item .tid| limitTo : 4:0}}-{{ item .tid| limitTo : 2:4}}-{{ item .tid| limitTo : 2:6}} </ p >
</ div >
< div class= "col-10 col-center ion-arrow-right-a" style= " color : #67B168 ; font-size : 1.5 em ; " >
</ div >
</ div >


js

//模糊查询---start
$scope. searchCont = {}; //搜索内容
$scope. clearSearch = function (){
$scope. searchCont . key = '' ;
}
自定义 过滤器(和项目无关,就是告诉读者 自定义过滤器也很简单)
pp.filter('wordPlace', function ($sce) {
    return function (input, word) {
        if (!word)
            return input;
        var result = input;
        return $sce.trustAsHtml(result);
    };
})

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值