我必须从几个输入中创建一些字符串。我想在函数中发送输入名称(HTML元素的名称)作为第二个参数。
<input [(ngModel)]="programSearched" name="programSearched"(ngModelChange)="stringBuilderOnChageMaker(programSearched,??programSearched.name??)" </input>
类似这样的东西,因为我有不同的输入和相同的onchange动作,我想知道输入 正在调用我的方法。
stringBuilderOnChageMaker(value, type) {
if (type == X) {
...
} else if (type == Y) {
...
}
}
一个解决方案是发送像sound这样的东西,如#34; program&#34;或1,但看起来不太好,如果我发送id或元素名称,它看起来会更好。
答案 0 :(得分:0)
您可以将$event
参数传递给您的更改方法。这将为您提供已更改的对象。假设您的对象有一个名称字段,它将如下所示:
<强> HTML 强>
(ngModelChange)="stringBuilderOnChageMaker(programSearched, $event)"
<强> TS 强>
stringBuilderOnChageMaker(value, event) {
console.log(event); // check what this logs
const name = event.name;
if (name == X) {
...
} else if (name == Y) {
...
}
}