问题标签 [angularjs-bindings]
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 - Angular 1 动态表单对象
我正在使用 Angular 1 并创建一个动态表单。它通过循环一些对象并呈现动态绑定的输入字段来工作,例如:
我在循环中还有一个上传字段:
当调用文件上传事件时,我试图设置隐藏字段的值,即 ng-model="questForm.Task[task.ID].FileUploadID",如下所示:
我收到以下错误,就像 $scope.questForm.Task[128] 不存在,即使隐藏的输入看起来正确并绑定到 $scope.questForm.Task[128]。
我尝试在范围内定义空白对象,例如:
但我应该不需要,因为它们是在模板中创建的?使困惑。谢谢大家。
javascript - 如何在 AngularJS 1.x 组件中验证表单
我有一个表单,它的字段在组件内部。现在我想验证这些字段。问题是,我的消息不显示。该模式也没有任何影响。我试图在这篇文章的帮助下修复它,但没有成功。
有人知道如何显示我的消息吗?
索引.html
组件.html
这是模式:
组件控制器.js
javascript - 如何在AngularJS中将数据从父级发送到子级
如何将数据从父控制器(索引)发送到子控制器(组件)。请参阅示例,而不是硬编码,url
我想将参数Title
从URL
页面控制器发送到组件。我坚持发送它,我不知道问题出在哪里。
索引.html
index.controller.js
mylistComponent.html
mylist.Component.js
javascript - 范围变量值的变化没有反映在我的字符串中
我有以下字符串:
现在我在上面的字符串中生成一个带有 1 个范围变量的查询字符串,但问题是当该变量的值发生变化时,新值不会自动在我的 URL 中更新。
您可以在下面的演示中看到我有 2 个按钮更新和检查。在更新中,我正在生成查询字符串,在检查按钮上,我正在更新范围变量的值,但这并没有反映在我的 URL 中。
我不明白为什么会这样。
当我单击检查按钮而不调用 generateQueryParameters 方法时的预期输出:
更新:我知道 $scope.no 的值何时会改变,所以我认为我不需要观察者,我不想再次调用。为什么 Angular 不会像 Angular 绑定那样generateParameters
自动更新我的值?str
angularjs - 角度 1.5。组件 - 通过绑定属性区分父控制器的最佳方法是什么?
我有一个 AngularJS 1.5 组件,它代表一个带有 ng-options 的选择下拉菜单。具体来说,这些 ng-options 由不同的数据(来自常量文件)动态填充,具体取决于绑定到组件的 name 属性的值,它来自父控制器。
例如,我的组件如下所示:
test.component.js
所以在父控制器的视图中是这样的:
parent-view.html
它工作得很好,但通过属性区分父控制器和数据可能不是一个好主意,name
因为它主要用于表单验证。为了区分父控制器以便能够将不同的数据填充到 ng-options 中,最好使用什么?
任何帮助和建议将不胜感激。
angularjs - 调试 Angular 绑定
我刚从 angular.js version 2 开始。(这么多年后仍在使用 jQuery :-))还有很多东西要学。
一件特别困扰我的事情:如何调试 DOM 中的绑定问题。例如,如果我绑定点击事件并出错:
如果不是:
我写的:
我发现浏览器完全乐于接受这个语法错误并忽略点击而不打印出任何错误。
另外,假设我不是犯这个错误的人(很多时候我需要调试其他人的代码),我在 DOM 中找不到这个绑定。当我在浏览器中“检查元素”时,标签中只剩下:“ngcontent_c0”哈希。(原来的装订不见了)。
所以我的问题是:
- 我可以让浏览器吐出一个错误,例如:ThisFunctionCallIsMissspelledAndIsMissingParantheses is undefined
- 如果我正在调试别人的代码,有什么方法可以使用浏览器来提示问题所在吗?我能以某种方式在 DOM 中看到 ThisFunctionCallIsMissspelledAndIsMissingParantheses 绑定到所述按钮吗?我在调试模式下使用“ng serve”:所以我可以看到 .ts 文件。然而,角度 HTML 绑定似乎是散列的。
angularjs - 角度范围更改不更新自适应表列可见性
我想知道是否有人可以帮助我,我一直在努力让一些东西工作一段时间,但几乎没有进展。我正在使用 angularjs 和 bootstrap 以及 adapt-strap,它基本上是一个基于 angular 和 bootstrap 的轻量级 ui 组件。为了尝试简化我的问题,我创建了一个现有小提琴的分支并稍微更改了代码。
http://jsfiddle.net/me397squ/3/
在上面链接的小提琴中,我使用了 adapt-strap 来创建和显示表格。对于模型列,我想根据特定条件隐藏/显示该列,因此我创建了一个名为 visibleProperty 的范围变量并将其设置为 true(jsfiddle 中的第 100 行)。然后我使用这个变量作为表的可见属性(第 108 行),如下所示。如果我最初将其设置为 true,则显示该列,如果我最初将其设置为 false,则隐藏该列。如你所料。
我的问题是代码的后面部分更新了这个字段(第 149 行),说它最初设置为 true 并更改为 false,但是该列不会隐藏。它似乎只采用给定的初始值,并且当范围变量更改时,它没有任何区别。我已经通过在表的“模型列可见属性”列中输出它来确认范围变量正在按预期更改。
有什么方法可以在 $scope.visibleProperty 更新时隐藏/显示该列?这个问题开始让我发疯,我非常感谢你能提供的任何帮助。
谢谢。
angular - 在 html 中调用时,Ionic Native Badge 显示为 [object Object]
所以我想在标签中显示来自离子原生徽章的徽章的价值,但它只会显示为[object Object]
.
这是我的 HTML
这是我的代码
为什么badge
显示为[object Object]
而不是徽章值?
angularjs - AngularJS 中的双向数组绑定得到一个空集
我在分配绑定到我的组件的数组时遇到了一些麻烦。
我的父模板:
vm.dataSource 是一个字符串数组。
我的自定义组件:
我的控制台输出
还有我渲染的子模板:
似乎当我尝试将 vm.cDataSource 分配给 vm.data 时,该集合是空的,但是当它在控制台中打印出vm时,它在折叠视图中是空的,但是如果我展开它,它会显示元素(4在这种情况下)。此外,当我在模板中打印时,直接绑定变量 (vm.cDataSource) 有元素,但本地变量 (vm.data) 没有。
我正在使用 AngularJS 1.5.0-rc.2。