如何在Angular中从数组添加和删除项目

LJ27

我正在做一个需要显示数组的项目,用户可以添加新数据或从数组中删除现有数据。

我对如何在数组中添加和删​​除项目感到困惑

我尝试使用push功能添加和pop功能删除,但失败。

的HTML

<div class="write">
    <h1>Student Details</h1>
    <div class="data" *ngIf="selectedStudent">
        <li> Name: <input type="text" [(ngModel)]="name" placeholder="Please enter Name" value={{selectedStudent.name}}>
        </li>
        <li> Age:<input type="text" [(ngModel)]="age" placeholder="Please enter Age" class="age"
                value={{selectedStudent.age}}></li>
        <li>College:<input type="text" [(ngModel)]="college" placeholder="Please enter College"
                value={{selectedStudent.college}}></li>
    </div>

    <p>
        <button class="btnA" onclick="addStudent()">Add</button>
        <button class="btnE" onclick="editStudent()">Edit</button>
        <button class="btnD" onclick="deleteStudent()">Delete</button>
    </p>

    <li *ngFor="let student of student" [class.selected]="student === selectedStudent" (click)="onSelect(student)">
        <span class="badge">{{student.name}} {{student.age}} {{student.college}}</span>
    </li>
</div>

.ts

export class WriteComponent implements OnInit {

    name: string;
    age: number;
    college: string;
    student = STUDENTS;
    selectedStudent: Student;

    constructor() {}
    ngOnInit(): void {}

    onSelect(student: Student): void {
        this.selectedStudent = student;
    }

}

模拟学生.ts(我存储我的数组)

import { Student } from './student';

export const STUDENTS : Student[]=[
  {name:'Johnny',age:24,college:'Harvard'},
  {name:'Samantha',age:20,college:'INTI'},
  {name:'Aditya',age:21,college:'Sunway'},
  {name:'Troy',age:25,college:'TARUC'},
]

这是项目的样子,当我单击该学生列表时,详细信息将显示在表单上。

Aish Anu |

希望这可以帮助.....

结果: 在此处输入图片说明

app.component.html

<div class="container">
<h2>Add User</h2>  
<form class="form-inline" autocomplete="off" (submit)="addStudent()">
    <div class="form-group">
      <label for="email">Name:</label>
      <input type="text" class="form-control" id="name" name="name" [(ngModel)]="user.name">
    </div>
    <div class="form-group">
      <label for="pwd">Age:</label>
      <input type="number" class="form-control" id="age" name="age" [(ngModel)]="user.age">
    </div>
    <div class="form-group">
        <label for="pwd">College:</label>
        <input type="text" class="form-control" id="college" name="college" [(ngModel)]="user.college">
      </div>
    <button type="submit" class="btn btn-success">Submit</button>
</form>

<div class="user-list" *ngIf="usersList && usersList.length">
    <h2>List of Users</h2>           
    <table class="table table-condensed">
        <thead>
        <tr>
            <th>SL.No</th>
            <th>Name</th>
            <th>Age</th>
            <th>College</th>
            <th>Action</th>
        </tr>
        </thead>
        <tbody>
            <tr *ngFor="let user of usersList; let i = index">
                <th>{{i}}</th>
                <td>{{user.name}}</td>
                <td>{{user.age}}</td>
                <td>{{user.college}}</td>
                <td>
                    <button style="margin-right: 5px;" class="btn btn-warning" (click)="editStudent(i)">Edit</button>
                    <button class="btn btn-danger" (click)="deleteStudent(i)">Delete</button>
                </td>
            </tr>
        </tbody>
    </table>
</div>

app.component.ts

export class AppComponent implements OnInit{
  user: User;
  usersList: User[] = []

  ngOnInit(): void {
   this.resetForm();
  }

  addStudent() {
   this.usersList.push(this.user);
   this.resetForm();
  }

  editStudent(index: number) {
    this.user = this.usersList[index];
    this.deleteStudent(index);
  }

  deleteStudent(index: number) {
    this.usersList.splice(index, 1);
  }

  resetForm() {
   this.user = {age: null, name: '', college: ''};
  }
}

interface User {
 name: string;
 age: string;
 college: string;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从数组列表对象中添加和删除项目

来自分类Dev

如何在Angular JS的数组中添加项目?

来自分类Dev

如何在 Angular 和 PHP 中删除项目

来自分类Dev

如何在ListView中添加/删除项目?

来自分类Dev

如何在RibbonGroup中添加或删除项目

来自分类Dev

在 javascript 中从 dataTables 源数组中添加和删除项目

来自分类Dev

如何从数组中添加和删除?

来自分类Dev

Angular 2 添加/删除/全选 - 数组中的项目

来自分类Dev

找出在数组中添加和删除的项目

来自分类Dev

jQuery-从数组中添加和删除项目

来自分类Dev

单击 reactjs 添加和删除数组中的项目

来自分类Dev

如何在 MATLAB Gui 上添加和删除项目

来自分类Dev

如何在Java中从数据数组中删除最少的项目?

来自分类Dev

如何在React中删除对象数组中的多个项目?

来自分类Dev

如何在Mongo中使用Java添加和删除数组中的元素?

来自分类Dev

如何在PHP中检索多维数组之间的更新,删除和添加?

来自分类Dev

如何在Mongo中使用Java添加和删除数组中的元素?

来自分类Dev

如何使用Knockout JS在列表中添加和删除项目?

来自分类Dev

如何使用Knockout JS在列表中添加和删除项目?

来自分类Dev

如何在SwiftUI中使用按钮从数组中删除项目?

来自分类Dev

如何从数组中删除项目

来自分类Dev

如何在Angular 2中动态添加和删除表单字段

来自分类Dev

Angular:如何在Angular中添加/删除文件?

来自分类Dev

如何在数组中添加和更新数组

来自分类Dev

如何在AngularJS中添加/删除字符串数组

来自分类Dev

如何在链接列表c中添加和打印项目

来自分类Dev

如何在Listview中添加子项目和空间

来自分类Dev

HTTP GET和POST,如何在Angular 2中实现以能够列出,添加和删除对象

来自分类Dev

QCheckbox从列表中添加和删除项目

Related 相关文章

  1. 1

    如何从数组列表对象中添加和删除项目

  2. 2

    如何在Angular JS的数组中添加项目?

  3. 3

    如何在 Angular 和 PHP 中删除项目

  4. 4

    如何在ListView中添加/删除项目?

  5. 5

    如何在RibbonGroup中添加或删除项目

  6. 6

    在 javascript 中从 dataTables 源数组中添加和删除项目

  7. 7

    如何从数组中添加和删除?

  8. 8

    Angular 2 添加/删除/全选 - 数组中的项目

  9. 9

    找出在数组中添加和删除的项目

  10. 10

    jQuery-从数组中添加和删除项目

  11. 11

    单击 reactjs 添加和删除数组中的项目

  12. 12

    如何在 MATLAB Gui 上添加和删除项目

  13. 13

    如何在Java中从数据数组中删除最少的项目?

  14. 14

    如何在React中删除对象数组中的多个项目?

  15. 15

    如何在Mongo中使用Java添加和删除数组中的元素?

  16. 16

    如何在PHP中检索多维数组之间的更新,删除和添加?

  17. 17

    如何在Mongo中使用Java添加和删除数组中的元素?

  18. 18

    如何使用Knockout JS在列表中添加和删除项目?

  19. 19

    如何使用Knockout JS在列表中添加和删除项目?

  20. 20

    如何在SwiftUI中使用按钮从数组中删除项目?

  21. 21

    如何从数组中删除项目

  22. 22

    如何在Angular 2中动态添加和删除表单字段

  23. 23

    Angular:如何在Angular中添加/删除文件?

  24. 24

    如何在数组中添加和更新数组

  25. 25

    如何在AngularJS中添加/删除字符串数组

  26. 26

    如何在链接列表c中添加和打印项目

  27. 27

    如何在Listview中添加子项目和空间

  28. 28

    HTTP GET和POST,如何在Angular 2中实现以能够列出,添加和删除对象

  29. 29

    QCheckbox从列表中添加和删除项目

热门标签

归档