Meteor Collection からデータを取得しようとしているときにいくつかの問題があり、アドバイスが必要です。
コレクションが正常に定義、公開、およびサブスクライブされました。データをテンプレートに送信すると、問題なく表示されます。
Template.Lists.Projects = function(){
return Projects.find();
};
しかし、データを表示する前に使用しようとしていますが、ここで問題が発生します。まず、find() と findOne() の間に矛盾があります。find(selector) は正常に動作し、カーソルを返しますが、findOne(selector) は「未定義」を返します。私は本当に 1 つのエントリしか探していないので、find() は必要ないようです。
LocalCollection.Cursor を返します。
var find = Projects.find({_id: "3fd33eed-9735-4376-860e-3be383beae2f"});
console.log(find);
未定義を返します:
var find = Projects.findOne({_id: "3fd33eed-9735-4376-860e-3be383beae2f"});
console.log(find);
次の問題は、LocalCollection.Cursor で .fetch() を使用するときに発生します。空の配列を返します。
var find = Projects.find({_id: "3fd33eed-9735-4376-860e-3be383beae2f"});
var fetch = find.fetch();
console.log(fetch);
これが返すのは次の行だけです。
[ ]
表示したい配列から特定のキーを指定しようとすると、次のようになります。
var find = Projects.find({_id: "3fd33eed-9735-4376-860e-3be383beae2f"});
var fetch = find.fetch();
console.log(fetch.name);
未定義を返します。
私はまだ Meteor に慣れていて、MongoDB (または minimongo) を使用したことがないので、おそらく愚かな間違いを犯しているだけです。誰かが私にそれを指摘することができれば、私はわくわくします!