2017-08-31 8 views
0

この方法でユーザーとグラブ情報を見つけることは可能ですか?私は、DO unidentifiedにここ Meteor + React + createContainer - ユーザープロフィールの検索

console.log(this.props.userDetails) 

をしようとしたとき、私のcreateContainerの設定が有効なIDが渡されると仮定すると

export default createContainer(() => { 

    const userDetails = Meteor.users.find({ _id: 'WSLuMFqofmks5i99F' }).fetch().profile 

    return { userDetails }; 
}, userProfile); 

であるとの結果がUSERPROFILEコンポーネントに小道具として使用できるようになります

答えて

0

を取得していますundefinedを意味しますか? 正確なエラーメッセージが役立ちます。

便宜のためfind()fetch()の代わりにfindOne()を使用できます。

このコード行:

const userDetails = Meteor.users.find({ _id: 'WSLuMFqofmks5i99F' }).fetch().profile 

は、_idを持つユーザが存在することを想定。より良い守備のコードは次のようになります。

export default createContainer(() => { 
    const user = Meteor.users.findOne({ _id: 'WSLuMFqofmks5i99F' }) 
    if (!user) throw new Meteor.error("Could not find user") 
    return {userDetails: user.profile} 
}, userProfile); 

その後エラーが

+1

正解であるかを見ることができ、あなたはまた、説明 '見つけること()も'クエリから見つかったすべての文書にカーソルを返します。そのカーソル上で 'fetch()'を呼び出すと、ドキュメントの配列が作成されます。 Noeはその配列上の '.profile()'を呼び出すと、(わかりやすく) 'undefined'を返します。この「未定義」がどのようにして作り出され、どのような根本的な仕組みがあるのか​​をOPに理解させるだけです。 – Jankapunkt

関連する問題