最新の隕石の observeChanges カーソル メソッドが 2 回呼び出されているように見えますが、その理由はわかりません。
クライアントのみのファイルには、次のコードがあります。
Meteor.startup(function () {
//TODO BROKEN
CodeFiles.find({_id: Session.get('currentFile')}).observeChanges({
changed: function(id, fields) {
console.log("Codefile changed");
console.log(fields);
}
});
});
私のブラウザでは次のようになります。
Codefile changed client.js:165
Object {edits: Object}
client.js:166
XHR finished loading: "http://localhost:3000/sockjs/991/bm7f2oa8/xhr_send". sockjs-0.3.4.js:821
XHR finished loading: "http://localhost:3000/sockjs/991/bm7f2oa8/xhr". sockjs-0.3.4.js:821
Codefile changed client.js:165
Object {}
ご覧のとおり、observeChanges メソッドは 2 回呼び出され、1 回は正しい編集オブジェクトと正しいデータが含まれています。空白のオブジェクトで 2 回目。空のオブジェクトをチェックして補正できるので、これは大きな問題ではありませんが、根本的な問題を修正したいと考えています。
完全なコードはオープンソースで、ここで表示できます: Github コミット リンク
コードを実行して JavaScript コンソールで問題を確認する場合は、特定のコミット番号に注意してください。後のコミットでは、未定義のチェックを行っているだけですが、役に立たないデータの送信が問題であるため、根本的な問題が解決されていることを確認したいと思います。