আমি টাইপ স্ক্রিপ্ট সহ কৌনিক 2 তে একটি সঞ্চিত অ্যারে থেকে একটি আইটেম সরাতে চাই। আমি ডেটা সার্ভিস, ডেটা সার্ভিস কোড নামে একটি পরিষেবা ব্যবহার করছি :
export class DataService {
private data: string[] = [];
addData(msg: string) {
this.data.push(msg);
}
getData() {
return this.data;
}
deleteMsg(msg: string) {
delete [this.data.indexOf(msg)];
}
}
এবং আমার উপাদান শ্রেণি:
import {Component} from '@angular/core'
import {LogService} from './log.service'
import {DataService} from './data.service'
@Component({
selector: 'tests',
template:
`
<div class="container">
<h2>Testing Component</h2>
<div class="row">
<input type="text" placeholder="log meassage" #logo>
<button class="btn btn-md btn-primary" (click)="logM(logo.value)">log</button>
<button class="btn btn-md btn-success" (click)="store(logo.value)">store</button>
<button class="btn btn-md btn-danger" (click)="send()">send</button>
<button class="btn btn-md " (click)="show()">Show Storage</button>
<button (click)="logarray()">log array</button>
</div>
<div class="col-xs-12">
<ul class="list-group">
<li *ngFor="let item of items" class="list-group-item" #ival>
{{item}}
<button class="pull-right btn btn-sm btn-warning" (click)="deleteItem(ival.value)">Delete
</button>
</li>
</ul>
</div>
<h3>{{value}}</h3>
<br>
</div>
`
})
export class TestsComponent {
items: string[] = [];
constructor(
private logService: LogService,
private dataService: DataService) {
}
logM(message: string) {
this.logService.WriteToLog(message);
}
store(message: string) {
this.dataService.addData(message);
}
send(message: string) {
}
show() {
this.items = this.dataService.getData();
}
deleteItem(message: string) {
this.dataService.deleteMsg(message);
}
logarray() {
this.logService.WriteToLog(this.items.toString());
}
}
এখন, আমি যখন কোনও আইটেম মুছতে চেষ্টা করি তা বাদ দিয়ে সবকিছুই ঠিকঠাক কাজ করছে। লগটি আমাকে দেখায় যে আইটেমটি এখনও অ্যারেতে রয়েছে এবং তাই এখনও পৃষ্ঠায় প্রদর্শিত হয়। আমি কীভাবে আইটেমটি মুছুন বোতামটি নির্বাচন করে তা সরিয়ে ফেলতে পারি ??
indexOf()
জন্য ফেরত পরীক্ষা করেন না, এটি পাওয়া না-1
গেলেmsg
এটি অ্যারে থেকে শেষ আইটেমটি সরিয়ে ফেলবে !