gpt4 book ai didi

javascript - 更改数据在 AngularJS 中的表示方式

转载 作者:行者123 更新时间:2023-12-02 17:19:24 25 4
gpt4 key购买 nike

我实际上不确定如何问这个问题,而且我可能使用了不正确的术语,所以请耐心等待。

Angular 设置了双向数据绑定(bind),以便轻松处理两侧的数据。但是如果我想更改数据的表示方式怎么办?

让我举一个具体的例子。

我想要一个带有复选框的表单,如果直接绑定(bind)到模型,Angular 会将其存储为 true 或 false。然而,在网页的另一部分,我希望该值显示为 0 或 1,而不是 true 或 false。

现在我确信我可以让它们使用两个不同的变量,并使用 ng-change 或类似的东西来根据另一个变量更新一个变量,但这似乎有点矫枉过正且令人费解。

是否有一些特殊的元函数或我可以定义的东西,可以让我在数据来回传输时基本上转换数据?

最佳答案

使用 ngTrueValuengFalseValue 指令。它们定义了复选框上应被视为 truefalse 的内容:https://docs.angularjs.org/api/ng/input/input%5Bcheckbox%5D

示例:

<input type="checkbox" ng-model="foo"
ng-true-value="OK"
ng-false-value="BOO-HOO">

模型的值为“OK”“BOO-HOO”,而不是默认的true在上面的示例中为 false

或者,如果您希望原始模型保留其默认值并仅从另一个变量中提取自定义值,您也可以使用 ngChange 指令:

<input type="checkbox" ng-model="foo"
ng-change="bar=foo&&'OK'||'BOO-HOO'">

现在,每当 foo 发生变化时,bar 都会有相应的替代值。只需记住为 bar 分配一个初始值(它将开始时根本没有值)。

关于javascript - 更改数据在 AngularJS 中的表示方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24101278/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com