を働いていない私はService.tsのGet-機能付き@Injectable
クラスが作成しています。この関数は1つの配列を返し、配列も取得します。しかし、それはnull
を返します。これを直接@Component
に書き込むと、配列が取得されます。私は間違って何をしていますか?私は以下のAngular2 @Injectable
@Injectable()
export class Arr_selected {
get(arr_selected: any[]){
arr = [];
for(let key in arr_selected) {
if (arr_selected.hasOwnProperty(key)) {
arr.push([key]);
return this.arr;
}
}
console.log(this.arr);
}
を動作するはずと考え
service.ts
@Injectable()
export class Arr_selected {
private arr = [];
get(arr_selected: any[]){
for(let key in arr_selected) {
if (arr_selected.hasOwnProperty(key)) {
this.arr.push([key]);
return this.arr;
}
}
console.log(this.arr);
}
}
component.ts
import {Arr_selected} from './service.ts';
export class Component implements DoCheck, OnChanges, OnInit {
....
constructor(public arr_selected: Arr_selected)
.....
ngOnInit{
let chk = this.ChkBoxValue;
let arr = [];
/// **this not working Array is null**/////
arr=(this.arr_selected.get(this.ChkBoxValue));
/// **this is working Array is not null**////
for (let key in this.ChkBoxValue) {
if (this.ChkBoxValue.hasOwnProperty(key)) {
arr.push(this.ChkBoxValue[key]);
}
}
console.log(arr);
}}
サービスをインポートしてコンポーネントに注入していますか? –
ありがとうございます、はい、私は - > import {Arr_selected} from './ servece.ts; – ran
おそらくプランカ? – elvin