ルーキーミスを犯していないことを望みますが、私はこれを理解できないようです。これはコンポーネント参照配列にサブスクリプションの結果を割り当てることができません
search(term: string,service,refArray: any[]){
service.search(term)
.subscribe(
result => {
refArray = result;
console.log(refArray); // display result as it should
console.log(this.resultArray); // display "undefined"
},
err => {
refArray = [];
console.log(err);
},
() => {console.log('completed')}
);
}
内部関数である
そして、私はこのようにそれを使用します: は、だからここのコードです
this.search(
searchTerm,
this.Service,
this.resultArray,
);
問題は、「私のコンポーネントレベルで変数宣言したということです関数の「refArray」パラメータが正常に取得されたとしても、apiSpotsはサブスクリプションの結果を得ることはありません。 サブスクリプション内の「refArray」は、関数に渡すものとまったく同じではないと思われますが、解決方法はわかりません。
すべてのアイデア?
EDIT: 検索機能
search(term: string,service,callback: (result) => void){
service.search(term)
.subscribe(
result => {
callback(result);
},
err => {
callback([]);
console.log(err);
},
() => {console.log('completed')}
);
}
と利用
let context = this;
this.search(
searchTerm,
this.Service,
function(result){
context.resultArray = result;
},
);
私はそれを今得ます、ありがとう。 –