Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular2-如何使用单向数据绑定绑定到JSON属性_Json_Angular_2 Way Object Databinding - Fatal编程技术网

Angular2-如何使用单向数据绑定绑定到JSON属性

Angular2-如何使用单向数据绑定绑定到JSON属性,json,angular,2-way-object-databinding,Json,Angular,2 Way Object Databinding,我尝试使用Angular2的单向数据绑定将输入字段值绑定到JSON属性。 JSON对象如下所示: [ { "name": "my name", "list": [ { "date": "0101970", "list": [ { "timespan": "6-7", "entries": [ { "name

我尝试使用Angular2的单向数据绑定将输入字段值绑定到JSON属性。
JSON对象如下所示:

[
  {
    "name": "my name",
    "list": [
      {
        "date": "0101970",
        "list": [
          {
            "timespan": "6-7",
            "entries": [
              {
                "name": ""
              },
              {
                "name": ""
              },
              {
                "name": ""
              }
            ]
          }
        ]
      }
    ]
  }
]
我想将该值绑定到
条目的特定
名称
属性
以下是我如何尝试进行途中绑定:

<div class="col-md-4" *ngFor="#category of categories">
        <div>
            <div class="col-md-12">
                <h1>{{category.name}}</h1>
            </div>
        </div>
        <div *ngFor="#listentry of category.list">
            <div class="row">
                <div class="col-md-12">
                    <h2>{{listentry.date}}</h2>
                </div>
            </div>

            <div class="row" *ngFor="#shift of listentry.list">
                <div class="row">
                    {{shift.timespan}}
                </div>
                <div class="row" *ngFor="#entry of shift.entries">
                    <div class="col-md-10">
                        <input type="text" class="form-control" (ngModel)="entry.name">
                    </div>
                </div>
            </div>
        </div>
    </div> 
据我所知,Angular2中的数据绑定
(ngModel)=“attribute”
从视图绑定到模型,而
[ngModel]=“attribute”
从另一个角度绑定。
那么,我的
怎么了

当然,我可以使用双向数据绑定,但我有一些其他约束(禁用表单元素),这些约束仅在按下按钮后应用,而不是在用户输入上应用。

<input type="text" class="form-control" [ngModel]="entry.name">
其中,
ngModel
是带有

@Input() ngModel; // for the [ngModel]="..." bindign
@Output() ngModelChange = EventEmitter(); // for the (ngModelChange)="..." binding
它们一起支持速记形式

[(ngModel)]="model"

其中,
ngModel
是带有

@Input() ngModel; // for the [ngModel]="..." bindign
@Output() ngModelChange = EventEmitter(); // for the (ngModelChange)="..." binding
它们一起支持速记形式

[(ngModel)]="model"

感谢您的回答,但是将
(ngModelChange)=“model=$event”
添加到输入元素不起作用。此外,没有错误消息。如前所述,由于其他限制,我不能使用
[(ngModel)]=“model”
。我只想将输入绑定到模型。如果模型发生更改,我不想更新视图。如果您不想或不能使用
ngModel
,则需要侦听输入元素本身的事件,如
(或输入发出的任何其他事件,如
(模糊)
(按键)
,…
(ngModel)
不会做任何事情,因为没有
ngModel
事件。
[(ngModel)]
只起作用,因为这是一种特殊的形式,其中
[xxx]=“model”
(xxxChange)=“model=$event”
可以组合成
[(xxx)]=“model”
谢谢!我以为ngModel可以做这项工作……我使用(更改)现在。感谢您的回答,但是将
(ngModelChange)=“model=$event”
添加到输入元素不起作用。而且,没有错误消息。正如我前面所说,我不能使用
[(ngModel)]=“model”
由于其他限制。我只想将输入绑定到模型。如果模型发生更改,我不想更新视图。如果您不想或不能使用
ngModel
,则需要侦听输入元素本身的事件,如
(或输入发出的任何其他事件,如
(模糊)
(按键)
,…
(ngModel)
不会做任何事情,因为没有
ngModel
事件。
[(ngModel)]
只起作用,因为这是一种特殊的形式,其中
[xxx]=“model”
(xxxChange)=“model=$event”
可以组合成
[(xxx)]=“model”
谢谢!我以为ngModel可以做这项工作……我使用它(改变)现在。
[(ngModel)]="model"