在Angular 2中,是否可以使用ngModel作为某种" 2单向数据绑定"?
我试图实现从用户LinkedIn作为建议的导入,然后应该与表单一起发布到另一个模型。
在angular文档中有这样的说明:
Inside [(ngModel)]我们可以通过单独绑定input元素的value属性和input事件来实现同样的结果。
<!--From angular.io-->
<input [value]="currentHero.firstName"
(input)="currentHero.firstName=$event.target.value" >
我想也许会有一种方法来使用ngModel与[value]和(input)作为两个独立的数据流,这意味着,导入是从用户模型,然后发布到公司模型。
下面是我的代码片段:
<div class="form-group">
<label for="industry">Industry</label>
<input type="text" class="form-control"
[value]="user.linkedIn.positions.values[0].company.industry"
(input)="company.industries=$event.target.value"
name="industry" required>
</div>
例如,我之前的表单代码看起来像这样:(没有任何导入或任何东西。基础后请求我有工作只是很好,一个新的公司被提交到我的数据库)
<input type="text"
class="form-control"
[(ngModel)]="company.industries"
name="industry" required #name="ngModel">
一些typescript代码:
getCurrentUser() {
this.userService
.getCurrentUser()
.then(user => this.user = user)
.catch(error => this.error = error);
}
submitted = false;
onSubmit() {
this.submitted = true;
this.companyService
.save(this.company)
.then(company => {
this.company = company;
this.goBack(company);
})
.catch(error => this.error = error);
}
当实际的http请求发出时,我在服务器上的节点应用程序崩溃了,并且当然这可能根本不可能用ngModel实现,但我不知道,所以我从这里开始。换句话说……在angular 2中,ngModel必须只绑定到一个模型上吗?还是我可以根据自己的需要定制它,以便导入数据并将这些数据发送到另一个模型?我希望这是有意义的。
所以基本上我的问题是:使用ngModel来做这种数据绑定是一种平滑的方式还是我用这种方式?另外:当从LinkedIn导入时,我能够从我的"用户"模型中获得正确的数据。
我不太明白你的问题。也许你正在寻找
[ngModel]="company?.industries" (ngModelChange)="company.industries = $event"