私はメテオとIonic2プロジェクトにあります。新しいアイテムをデータベースに挿入すると、新しく生成された_id
を取得する必要があります。しかし、正しい方法でObservable
にアクセスする方法はわかりません。Ionic2 +流星:新しい挿入物の_idを取得
サーバー:
newItem() {
if (!this.userId)
throw new Meteor.Error('unauthorized', 'User must be logged-in to insert an item');
return Items.insert({ ownerId: this.userId, title: 'New Item' });
}
クライアント:
MeteorObservable.call('newItem').subscribe({
next:() => {
//get _id
},
error: (e: Error) => {
console.log("Error: " + e);
}
});
Items.insert
挿入_id
を含むObservable<string>
返します。クライアント側のnext:()
内の_id
にはどうすればアクセスできますか?
編集:私は、クライアント上でこれを試してみました :
MeteorObservable.call('newItem').subscribe(
data => {
console.log(data);
},
error => {
console.log("Error: " + error);
}
);
しかしdata
が空のオブジェクトObject {_isScalar: false}
があります。 :(
EDIT2: 私もそれをここに投稿:https://forums.meteor.com/t/get--id-after-insert-from-returned-observable-on-client/32106
これは 'next :()=> {}'何かが流星か、それともイオン性? – Ivaro18
l '.subscribe(data => {console.log(" id: "+ data); }、error => {console.log( "エラー:" + error); } 012); – Ivaro18
'next:'はチュートリアルです:https://angular-meteor.com/tutorials/whatsapp2/ionic/chats-mutations 私はあなたのコードに似たものを試しましたが、私は試してみます再び – SoS