【发布时间】:2019-01-01 17:54:05
【问题描述】:
我在我的应用程序中使用 ng-select。
我的组件类是
export class ExampleComponent {
selectedCoursesList: Course[] = [];
courseList: any[] = [];
removeCourse( course: Course) {
this.selectedCoursesList.forEach((item, index) => {
if (item === course) {
this.selectedCoursesList.splice(index, 1);
}
});
}
}
我的html是
<ng-select placeholder="Choose course" [multiple]="true"
(ngModelChange)="updatecourse($event);"
[(ngModel)]="selectedCoursesList">
<ng-option *ngFor="let course of courseList" [value]="course" >
{{course.name}}
</ng-option>
</ng-select>
这里我想实现两件事
- 取消选择 ng-select 的特定选定值
- 2路数据绑定
谁能告诉我我做错了什么?
谢谢
【问题讨论】:
-
你必须告诉我们你遇到了什么错误。
-
我没有收到任何错误。我在 html 中使用 selectedCourseList 作为 {{ selectedCoursesList }} 。它不会删除课程对象。
-
您的模板不起作用?你能更新
stackblitz.com中的代码吗? -
当然使用{{selectedCoursesList }},不会删除Course[],因为它是组件属性,直接绑定到对应的模板。因此,您有一个不工作的 Template/HTML 。如果使用“{{selectedCoursesList }}”也会报错
-
@JitendraAhuja,1. 最初我的 selectedCoursesList 是空的 2. 当我从 ng-select multiple => selectedCoursesList 中选择一门课程时,它有一个对象 3. 当我从选择列表中选择第二门课程时,它有两个对象.当你选择一门课程时,我会打电话给
<app-body-component *ngFor = "let course of selectedCoursesList" [course]="course" (removeCourse)="removeCourse($event)"> </app-body-component>4. 在子组件中,我有一个按钮可以从列表中删除课程。
标签: angular angular6 2-way-object-databinding