我有一個項目列表。我原來下拉。這是一個對象數組。然後我會發出一個請求,檢查是否有任何內容從這個新的端點改變爲這個數組。如果一個對象已經添加到這個數組,那麼我需要以某種方式顯示這個數組與添加的對象。因此將新對象插入舊數組中。我會怎麼做呢?謝謝!基於布爾值添加/刪除對象到數組 - angular 2 +/Ionic 2+
0
A
回答
0
此方法適用於單獨使用Angular或使用Ionic Framework。
您可以使用以其Observable,Subject,BehaviorSubject等已知的RxJs庫。
您需要訂閱要更改的對象/數據。
我選擇了這個例子的主題,因此沒有添加一個初始值。你可以走另一條路,做這個
watcher = new BehaviorSubject(objArr);
它將與= [{},{}]設置爲它的objArr的價值開始。
下面是一個關於如何去解決這個問題的簡單例子。
import {AfterContentInit, Component, OnInit} from '@angular/core';
import {Subject} from "rxjs/Subject";
@Component({
selector: 'app-root',
styleUrls: ['./app.component.css'],
template: `
<h1> Keep watch on new additions to Array </h1>
<button (click)="addObj({name: 'Doe', age: 30})">Add Object</button>
<div *ngFor="let item of objArr">
<ul>
<li> Name: {{item.name}}, Age: {{item.age}}</li>
</ul>
</div>
`
})
export class AppComponent implements OnInit, AfterContentInit {
//// lets say it is where the data is coming from and into.
objArr = [
{
name: 'John',
age: 20
},
{
name: 'Jane',
age: 21
}
];
watcher = new Subject();
constructor() {}
ngOnInit() {
this.watcher.subscribe((data: User) => {
console.log('Array has being modified --> ' , data);
alert('Array has received new Data')
this.objArr.push({name: data.name, age: data.age})
})
}
ngAfterContentInit() {
setTimeout(() => {
this.watcher.next({name: 'Andy', age: 32})
}, 3500)
setTimeout(() => {
this.watcher.next({name: 'Bob', age: 48})
}, 6000)
}
addObj(data: User) {
this.watcher.next(data)
}
}
export interface User {
name: string,
age: number
}
你可以去這裏進一步閱讀和文檔http://reactivex.io/rxjs/
但底線是,你需要一個可觀察的/ etc觀看有關流的文件變化,訂閱它收到通知/等。這也是使用EventEmitter在組件之間進行通信的更好方法。 Angular加載了可以訂閱的Observable,例如HttpClient。
祝你好運。
相關問題
- 1. Angular 2,Ionic 2
- 2. Ionic/Angular 2:點擊添加新項目後顯示數組值
- 3. 對象數組Angular 2的訪問值
- 4. Angular 2/Ionic 2發佈請求主體
- 5. 基於值顯示組件 - Angular 2
- 6. Ionic 2 Angular 2顯示來自對象陣列的數據
- 7. 使用Angular 2添加和刪除樣式到li組
- 8. Ionic 2 Angular 2獲取REST JSON數據
- 9. 在Angular 2/Ionic 2中刪除自動注入的CSS樣式
- 10. 從列表中刪除選中的選中項 - Angular 2 +/Ionic 2
- 11. 添加基於值數組項,並刪除重複值在PHP
- 12. 添加數組裏面的對象Angular 2
- 13. Ionic 2/Angular - 操縱JSON
- 14. Ionic 2/Angular 2中的全局函數
- 15. http在Ionic 2中刪除
- 16. 測試2布爾數組
- 17. 添加JQuery插件到Angular 2組件
- 18. Ionic 2/Angular 2全局變量
- 19. 帶有Ionic 2 Angular 2和TypeScript的OpenPGP
- 20. Angular 2 http獲取對象數組
- 21. Angular 2-如何過濾對象數組?
- 22. Ionic 2/Angular 2顯示陣列
- 23. Ionic 2/angular 2 - 如何在組件中添加Typescript的HTML元素?
- 24. Ionic beta 11 - 升級Angular 2
- 25. 獲取數組鍵刪除的基於數組對象
- 26. Angular 2:將ngClass添加到基於單擊事件的元素
- 27. 如何調用對象值ionic 2
- 28. Ionic 2 Angular 2 - 不能從方法
- 29. 添加/刪除數組中的對象
- 30. 角2刪除對象
端點返回什麼?你如何實現後端調用?通過觀察? – yoonjesung