Ahm*_*bib 4 javascript parameter-passing ngfor angular8
我有一个对象数组。我正在循环中迭代,并将每个项目的名称传递给onclick,它针对资产文件夹openIt(val)中的app.js文件中的函数。IE
角度代码:
<div *ngFor="let item of listArray">
<button class="tabopen" onclick="openIt(item.name)">{{item.name}}</button>
</div>
Run Code Online (Sandbox Code Playgroud)
app.js 代码:
function openIt(data) {
console.log(data);
}
Run Code Online (Sandbox Code Playgroud)
在app.js 文件中的openIt 函数中,我没有得到item.name。在我的控制台中,它显示了item is not defined 的错误。但是当我传递静态数据时,即onclick="openIt('sample_data')"它没有显示任何错误。
即使 item.name 也存在,我也得到了正确的值。我不明白为什么我无法将迭代数据传递给参数。
如果您正在使用Angular,那么你应该一起去(click),因为当你声明的事件处理程序,你需要围绕该DOM 事件的名称中parentheses,并分配一个模板声明它。
<button class="tabopen" (click)="openIt(item.name)">{{item.name}}</button>
Run Code Online (Sandbox Code Playgroud)