我有以下选择元素:
<select (change)="onChange(start, end, break, project);" [acTotalStatus]="this.totalStatus"
[acMonth]="this.date.month" [acYear]="this.date.year" [acCustomer]="this.selectedCustomerFromProject"
id="dailyEntryProject" class="form-control" name="project" [(ngModel)]="projectName" #project="ngModel"
tabIndex="0" required>
<option value=" " disabled selected>Select your option</option>
<option *ngFor="let project of projects" [ngValue]="project.name">{{project.name}}</option>
</select>
我有两种方式绑定[(ngModel)]="projectName"
,在一种情况下,我在打字稿中手动设置了projectName
,这不会触发(change)
事件。我想手动触发它,我不知道该怎么做。我之所以不在打字稿中直接调用onChange(start, end, break, project)
是因为所需的参数是在html文档中定义的。
我尝试使用变更检测,触发事件,调度事件等,但还找不到手动触发(change)
的方法。
答案 0 :(得分:0)
如果我理解正确,则您没有直接调用onChange(params),因为它们是在html中定义的。我在这里有两点:
1)您无法在html中定义任何内容。
2)onChange(params)内部的参数必须在打字稿中已经存在。仅因为它们存在于ts文件中,您才能使用html访问它们。
如果这些参数位于ts文件中,则可以在整个应用程序中的任何位置使用它们。