将 $scope 注入过滤器 (AngularJS)

2023-12-31

我正在尝试做的事情:

我在关联数组上使用 ng-repeat 指令,我想对其进行过滤。内置角度过滤器不适用于关联数组/哈希。因此,我正在尝试编写自己的过滤器(灵感来自http://angularjs.de/artikel/angularjs-ng-repeat http://angularjs.de/artikel/angularjs-ng-repeat;它是德语的,但重要的代码位于标题“Beispiel 2: Filtern von Hashes mittels eigenem Filter”下方,这意味着“示例 2:使用您自己的过滤器过滤哈希”)。

ng-重复:

tr ng-repeat="(key, machine) in machines | customFilter | orderObjectBy:'name':false"

注意:orderObjectBy也是一个customFilter。

过滤器:

toolApp.filter('customFilter', [function(){
    return function(machines){
        var result = {};

        angular.forEach(machines, function(machine, key){
            /*if(machine.name.contains(filter)){
                result[key] = machine;
            }*/
            //if(machine.name.contains("a")){
                result[key] = machine;
            //}
        });
        return result;
    };
}]);

该过滤器使用硬编码的“过滤标准”。但我想在列表上方有一个文本框,用户可以在其中输入“过滤条件”。我的问题是,我不知道如何将此值插入到过滤器中。我在互联网上找不到太多内容,而且我找到的内容对我不起作用。

有谁知道如何插入值或可能采用不同的方法。

非常感谢您的每一个回答!如果您需要更多信息,请告诉我!我尽量保持简短:>。

来自德国的问候


您的自定义过滤器可能有参数。

假设您有一个输入字段:

<input ng-model="myParam">

和像你一样的 ng-repeat:

<tr ng-repeat="(key, machine) in machines | customFilter:myParam | orderObjectBy:'name':false" >

那么您可以在自定义过滤器中访问此参数:

toolApp.filter('customFilter', [function(){
    return function(machines, myParam){
        var result = {};

        angular.forEach(machines, function(machine, key){
            if(machine.name.contains(myParam)){
                result[key] = machine;
            }
        });
        return result;
    };
}]);

笔记: 请注意,myParam 值是用“未定义”值初始化的。您必须在控制器中设置默认值或在 customFilter 中处理它。否则,您只能在开始输入后看到您的列表。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 $scope 注入过滤器 (AngularJS) 的相关文章

随机推荐

  • NSDateFormatter 用于 BST 而不是 GMT+1

    我想在时间轴上显示以下字符串 格林威治标准时间 英国夏令时 这是代码 NSDateFormatter dateformatter NSDateFormatter alloc init dateformatter setDateFormat
  • 存储在单个向量中的三角形邻接矩阵的正向和逆向索引

    我有一张带有点的地图 我想知道每个点之间的距离 这可能称为无向循环图 由于点很多 我的存储空间有限 所以阵列需要很密集 对于 4 个城市 n 4 我需要 6 个索引来映射这 4 个城市 Index City1 lt gt City2 Ind
  • 推送到接口类型数组

    我有一个名为 TestEvent 类型的 rows 的数组 并且想要推送到该数组 我无法输出我推送的对象 它仅显示未定义 正如您所看到的 this rows 显示了数组 但是当我尝试输出特定数组 this rows 0 时 我得到了未定义
  • 有没有办法测试jqGrid是否有数据?

    我正在尝试启用和禁用 jqgrid 上的自定义按钮 但仅当网格为空时才启用该按钮 然后在网格不为空时禁用该按钮 有没有办法测试网格是否有数据 Thanks 您可以测试一下网格中有多少条记录 如果没有行 则网格为空 jQuery grid j
  • 修改我的.jar程序的任务栏图标

    我试图更改每次运行 jar 程序时出现在任务栏中的默认 java 图标 我设法用frame setIconImage img 更改它但这使得图标太小 我希望它与其他程序图标一样大并且具有高质量 我有什么办法可以做到这一点吗 谢谢 由于您只提
  • Android:使用“连续”自动对焦录制视频

    我从事视频录制工作 除了要求持续专注之外 一切正常 这就是我所做的 在surfaceCreated和surfaceChanged中都尝试过但没有成功 camera Camera open camera setPreviewDisplay h
  • JavaFX WebView 中的缓存

    我们正在开发一个JavaFX 2 x 应用程序 它需要提供一些GIS 支持 我们得出的结论是 通过嵌入式 WebView 使用 GoogleMaps 是最快的选择 问题是每次我们的应用程序启动时 都会下载相应的 JavaScript 库 这
  • 为什么 Scripts.Render 会调用 JsMinify.Process?

    我介绍了我的ASP NET MVC应用程序 我看到一个奇怪的函数调用 你可以在图片上看到它 总是当 mvc 渲染布局时我们调用system web optimization scripts render哪个调用JsMinify Proces
  • SQL Server 用户实例中的哪些内容导致它们无法在非 Express Edition 中使用?

    开发了几年 或更长时间 后 我仍然不明白 What makes User Instances impossible incompatible with Developer or any other edition of SQL Server
  • 读取中间件.Net Core中的Controller和Action名称

    我正在我的项目中编写一个中间件类 以便将请求数据记录到我们的数据库中 我没有看到任何简单的方法来获取控制器名称和操作 有机会在核心中轻松做到这一点吗 我有这样的事情 public class RequestResponseLoggingMi
  • 实例构造函数设置静态成员,线程安全吗?

    我正在重构一些代码 并且想知道如何使用lock在实例构造函数中 public class MyClass private static Int32 counter 0 private Int32 myCount public MyClass
  • 付款交易发生时禁用后退按钮

    我有一个 XHTML 页面 在信用卡付款成功后调用 但当用户点击后退按钮时 他会再次充电 我该如何处理这个问题 方法是禁用后退按钮或在他按后退空格或后退按钮时使他的会话无效 我正在使用 Spring3 JSF 但这个问题与此参考无关 因为这
  • Python(服务器) Android(客户端) Socket编程

    我想制作一个将Python代码与Android Studio连接起来的程序 但是 android studio 上出现了一个问题 它没有显示任何我想在模拟器屏幕上显示的 UI 我认为这是由于 StrictMode 但如果我排除 Strict
  • 如何在没有任何错误或警告的情况下查找构建失败的原因

    我有一个 WebApplication 其中包含对 WCF 服务的引用 使用 Visual Studio 2010 生成时 生成失败 且没有任何错误或警告 然而建设 csproj using MsBuild是成功的 无法弄清楚我应该在 Vi
  • Torch 张量相当于 matlab 的“查找”功能?

    简而言之 我想知道 torch 中是否有一个张量命令可以为我提供满足特定条件的张量中元素的索引 下面是 matlab 代码 说明了我希望能够在 torch 中执行的操作 my mat magic 3 returns a 3 by 3 mat
  • 如何创建一个包含 2 列的列表视图,显示所有已安装的 Android 应用程序及其权限?

    我是 Android 开发的新手 2 天前 我打算创建一个应用程序 列出设备中当前安装的所有应用程序 并在每个结果旁边有一列显示授予的权限 我知道按照惯例 listView 有 1 列 如何制作另一列 我也愿意接受其他想法 就像当我单击已安
  • 如何在android中设置包含背景颜色

    如何设置背景颜色include安卓中的标签 这不起作用
  • Exoplayer 视频加载速度

    我正在寻找在我的项目中实现 exoplayer 我已经成功实现了 但是视频加载时间很慢 如何在exoplayer中实现或实现视频的快速加载 就像抖音一样 立即加载视频并开始播放 尝试下面的代码 它使缓冲时间变小 因此您可以更快地加载视频 M
  • Umbraco 缓存问题

    我的 umbraco cms 遇到问题 我们使用 umbraco 4 6 2 和 net 用户控件 一切都运行良好 直到几周前 客户开始抱怨更新的内容没有显示在前端 经过一番调查后 我确定就在这种情况开始发生之前 其中一个用户遇到错误 指出
  • 将 $scope 注入过滤器 (AngularJS)

    我正在尝试做的事情 我在关联数组上使用 ng repeat 指令 我想对其进行过滤 内置角度过滤器不适用于关联数组 哈希 因此 我正在尝试编写自己的过滤器 灵感来自http angularjs de artikel angularjs ng