【问题标题】:When do I use [value] and / or [ngValue] or when not? [duplicate]我什么时候使用 [value] 和/或 [ngValue] 或者什么时候不使用? [复制]
【发布时间】:2019-09-19 14:57:58
【问题描述】:

我已经使用 angular 几年了,我同时使用了 [value][ngValue],我了解它是如何工作的 - 在 [value]:我只能在中发送一个特定的值[ngValue]:我可以发送一个完整的对象,但它会产生一些混乱,此时我应该使用一个并且另一个,因为我可以用他们两个来获取数据。

【问题讨论】:

  • value 用于字符串,ngValue 用于对象
  • @NagaSaiA 谢谢!但是在加载时让我们说一个 select 哪个更好用?
  • 根据官方 anfular 文档,即使对于 select,angular.io/api/forms/NgSelectOption,ngValue - 跟踪绑定到选项元素的值。与值绑定不同,ngValue 支持绑定到对象。 and value - 跟踪绑定到选项元素的简单字符串值。对于对象,使用 ngValue 输入绑定。

标签: angular


【解决方案1】:

[ngValue] 当值为和对象时选择元素选项

 const options = [{..} , {..} ,{..} ,{..}]

 <option *ngFor="let opt of options" [ngValue]="opt">{{opt.name}}</option>

[value] 当值只是原始值,如数字、布尔值、字符串时

 const options = [{..} , {..} ,{..} ,{..}]

 <option *ngFor="let opt of options" [value]="opt.id">{{opt.name}}</option>

【讨论】:

    【解决方案2】:
    `const items = ["one", "two"] `
    
    <option *ngFor="let item of items" [value]="item">
        {{item}}
    </option>
    

    使用[value] 选择其中一个选项时,值将为onetwo

    <option *ngFor="let item of items" [ngValue]="item">
        {{item}}
    </option>
    

    使用[ngValue] 选择其中一个选项时,值将为0: one1: two

    当你有 String 作为输入时,然后使用 value 和

    当 Object 作为输入时,使用 ngValue。

    【讨论】:

      【解决方案3】:

      它似乎与:Differences between value and ngValue in Angular 5 重复。

      • [value] 是一个动态属性。 HTML 元素的每个属性都可以是动态的(例如:&lt;a&gt; 标记的[href] 属性,甚至&lt;img&gt; 标记的[src] 属性。所有这些动态属性都只采用strings

      • [ngValue] 是一个提供value 不提供的额外服务的指令:在这种情况下,传递您无法传递给[value]对象 p>

      【讨论】:

        猜你喜欢
        • 2011-08-01
        • 2010-09-11
        • 2021-11-01
        • 2010-11-09
        • 2011-03-23
        • 1970-01-01
        • 1970-01-01
        • 2017-06-28
        • 2014-04-29
        相关资源
        最近更新 更多