আমার একটি সাধারণ উপাদান রয়েছে যা প্রতি কয়েক সেকেন্ডে একটি রেস্ট এপিআই কল করে এবং কিছু জেএসএন ডেটা ফিরে পেয়েছে। আমি আমার লগের বিবৃতি এবং নেটওয়ার্ক ট্র্যাফিক থেকে দেখতে পাচ্ছি যে JSON ডেটা ফিরিয়ে দেওয়া হচ্ছে এবং আমার মডেলটি আপডেট হচ্ছে, তবে দৃশ্যটি পরিবর্তন হচ্ছে না।
আমার উপাদানটি দেখে মনে হচ্ছে:
import {Component, OnInit} from 'angular2/core';
import {RecentDetectionService} from '../services/recentdetection.service';
import {RecentDetection} from '../model/recentdetection';
import {Observable} from 'rxjs/Rx';
@Component({
selector: 'recent-detections',
templateUrl: '/app/components/recentdetection.template.html',
providers: [RecentDetectionService]
})
export class RecentDetectionComponent implements OnInit {
recentDetections: Array<RecentDetection>;
constructor(private recentDetectionService: RecentDetectionService) {
this.recentDetections = new Array<RecentDetection>();
}
getRecentDetections(): void {
this.recentDetectionService.getJsonFromApi()
.subscribe(recent => { this.recentDetections = recent;
console.log(this.recentDetections[0].macAddress) });
}
ngOnInit() {
this.getRecentDetections();
let timer = Observable.timer(2000, 5000);
timer.subscribe(() => this.getRecentDetections());
}
}
এবং আমার দৃষ্টিভঙ্গি দেখে মনে হচ্ছে:
<div class="panel panel-default">
<!-- Default panel contents -->
<div class="panel-heading"><h3>Recently detected</h3></div>
<div class="panel-body">
<p>Recently detected devices</p>
</div>
<!-- Table -->
<table class="table" style="table-layout: fixed; word-wrap: break-word;">
<thead>
<tr>
<th>Id</th>
<th>Vendor</th>
<th>Time</th>
<th>Mac</th>
</tr>
</thead>
<tbody >
<tr *ngFor="#detected of recentDetections">
<td>{{detected.broadcastId}}</td>
<td>{{detected.vendor}}</td>
<td>{{detected.timeStamp | date:'yyyy-MM-dd HH:mm:ss'}}</td>
<td>{{detected.macAddress}}</td>
</tr>
</tbody>
</table>
</div>
আমি দেখতে পাচ্ছি console.log(this.recentDetections[0].macAddress)
যে সাম্প্রতিক নির্দেশসমূহ অবজেক্টটি আপডেট করা হচ্ছে, তবে আমি পৃষ্ঠাটি পুনরায় লোড না করা পর্যন্ত দৃশ্যের টেবিলটি কখনই পরিবর্তন হয় না।
আমি এখানে কী ভুল করছি তা দেখার জন্য আমি সংগ্রাম করছি। কেউ সাহায্য করতে পারেন?