问题标签 [angularjs-ng-repeat]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angularjs - 在 AngularJS 中,使用 ng-repeat,为什么 $scope 变量会在子级之间发生冲突?
我有一个代表“讨论”或“辩论”的对象,它有两个孩子——每个孩子都是代表辩论中“争用”的孩子对象的集合。一个孩子是“肯定”争论的集合,另一个是“否定”争论的集合。
我正在使用这样的东西:
这将显示两组争用,每组顶部都有一个“添加新争用”表单。表单基于 toggleEditForm() 方法进行切换。我对“新争用”和“编辑争用”使用相同的表单模板,因此该表单有一个模型(单选按钮)来判断争用是“肯定”还是“否定”争用。
控制器“contentionGroupCtrl”用于争用组,它的 toggleEditForm 方法如下所示:
一切都很好,除了:假设您打开“肯定”端的“添加新争用”表单。它将显示一个空白名称,并选择了单选按钮“肯定”。如果您然后单击“否定”侧的“添加新争用”按钮,将出现相应的表单,但两个“名称”字段都将被空白,并且两个单选按钮都将被选中用于“否定”。
$scope 应该在每一边都不同,不是吗?每个表单都使用自己的 $scope.edit 模型;为什么修改否定争用方的“edit.name”和“edit.aff”模型会影响肯定方的?
javascript - Angular JS隐藏ng-repeat的第一个元素
我将如何隐藏 ng-repeat 的第一个元素?
这适用于整个 ng-repeat 块被隐藏,但我将如何只隐藏项目中的第一项?我想使用更突出的 html/etc 以完全不同的方式显示它,因此将它放在该数据列表中很有用。
javascript - Angular 指令不评估内部 ng-repeat
我有以下设置:
应用程序/指令
控制器
HTML:
这是一个非常简单的示例,但我无法渲染它。也许有一些教程没有告诉我,或者那是秘密的 Angular 知识?
如果我删除<tr ng-repeat="..." />
and place内的指令<td>{{ displayText }}</td>
,它将显示所有记录。
但我希望该指令比单个<td>{{}}</td>
(最终)更复杂,以便我可以在多个应用程序中重用该指令。
所以,我真的在问我们如何正确地创建一个进入 ng-repeat 的指令?我错过了什么?应该从上面的代码中删除什么?
angularjs - 过滤角度重复
尝试为 Angular.js 创建一个过滤器
Controller.js 示例片段:
角HTML:
现在,我试图只返回那些没有活动版本的标题(没有版本数组的成员设置为 true)。发现很难在网上找到这样的例子......
javascript - 我可以避免 ng-repeat 循环中的对象变量名吗?
当定义一个 ng-repeat 指令来迭代一个数组时,语法指定ng-repeat="friend in friends"
,然后在模板中使用 interoplation 运算符,如下所示{{friend.name}}
。
是否可以将属性分配给当前项目范围,而不是其中的变量?所以我可以打电话{{name}}
而不是{{friend.name}}
?
原因是我的指令在两个不同模板的范围内使用 - 例如,我可能有一个指令"userActions"
既用于转发器,也用于不相关的模板,{{friend.name}}
但没有意义。我想避免人为地制造friend
没有语义的对象。
我的用例是这样的:
我有一个渲染各种类型块的网格。一些伪代码:
我还有一个朋友页面,其中包含完全相同的用户操作:
现在,如果我想使用中继器内块的属性,语法是{{block.name}}
. 所以模板userActions
包含这个。
但是,一旦我在朋友页面中使用了这个模板,我必须{{block.name}}
在朋友控制器的范围内创建。但这没有意义,因为块仅存在于块网格的上下文中。我不应该创建这个block
。
我想要做的只是{{name}}
从userActions
指令模板中调用,因为块范围和控制器都包含它。我不想创建一个对象,然后在我想使用该指令的每个范围内block
人为地设置。block.name
userActions
这是一个jsFiddle 来说明原因
javascript - Angular JS 从 1.1.0 升级到 1.1.1 后失败
当我升级 ng-repeat 需要非常长的时间来加载并尝试显示更多内容框而没有 $resource 提供的内容。
我已将问题缩小到 1.1.0 和 1.1.1 之间的更新。我查看了更新日志,但没有任何内容显示我是罪魁祸首,但它一定在里面。
变更日志 => https://github.com/angular/angular.js/blob/master/CHANGELOG.md#111-pathological-kerning-2012-11-26
此应用程序的存储库 => https://github.com/brianpetro/resume
目前我的角度看起来像:
这发生在使用 ng-repeat 的多个视图上:
这是 AngularJS 版本 1.1.0:
这是 AngularJS 版本 1.1.1:
angularjs - AngularJS 过滤嵌套对象
我有一个对象数组,其中包含对象数组:
和一个模板:
现在,我使用filter
过滤器来搜索字符串匹配,但它只适用于第一个ng-repeat
指令。如何将第二个指令包含在搜索过滤器中?提前致谢。
angularjs - 带有 ng-repeat 的 AngularJS 指令不呈现
问题是我必须管理从服务中检索到的口香糖球列表。当我对 HTML 中的元素进行硬编码时,我创建的指令似乎有效,但是当我尝试使用 ng-repeat 动态分配口香糖球时。
HTML
JavaScript
CSS
http://jsfiddle.net/i3sik/NGB9v/22/
传入指令时的 id 和 color 属性在使用 ng-repeat 传递时最终未定义,但在 HTML 中硬编码时有效。
razor - 如何在不编码的情况下在 url helper 中使用特殊字符?
我正在使用 ng-repeat 来显示中心表。对于每个中心,我想提供一个使用角度数据的编辑按钮:
现在 VS 在表达式上给我一个错误:
我似乎无法找到一种方法,因此 razor 使用 {{center.Code} 中的值,就像在纯 html 中一样。
javascript - 如何在angularJS中过滤多个值(或运算)
我想使用filter
in 角度并希望过滤多个值,如果它具有其中一个值,则应该显示它。
例如,我有这个结构:
movie
一个具有属性的对象,genres
我想过滤Action
和Comedy
。
我知道我可以做filter:({genres: 'Action'} || {genres: 'Comedy'})
,但是如果我想动态过滤它怎么办。例如filter: variableX
当我有一系列必须过滤的类型时,如何在 中设置variableX
?$scope
我可以将它构造为一个字符串,然后做一个eval()
但我不想使用 eval()...