如何在TypeScript中手动触发(更改)事件?

时间:2019-11-12 11:11:07

标签: html angular events

我有以下选择元素:

<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)的方法。

1 个答案:

答案 0 :(得分:0)

如果我理解正确,则您没有直接调用onChange(params),因为它们是在html中定义的。我在这里有两点:

1)您无法在html中定义任何内容。

2)onChange(params)内部的参数必须在打字稿中已经存在。仅因为它们存在于ts文件中,您才能使用html访问它们。

如果这些参数位于ts文件中,则可以在整个应用程序中的任何位置使用它们。