問題タブ [minimongo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mongodb - Meteor で $geoNear を使用してドキュメントを抽出する
Minimongo は $geoNear 機能を提供しないため、これが検索要件である場合は、サーバー上で実行する必要があります。
これは、ローカル コレクションに複数のパブリケーションからの結果が含まれている場合に問題を引き起こします。これは、パブリッシュ時に使用されたのと同じ検索基準をローカル コレクションに提供して $geoNear 検索から結果を抽出する方法がないためです。
検索ごとに個別のローカル コレクションを使用すると役立つ場合もありますが、私の場合、問題は実際にはさまざまな目的で複数のパブリケーションから発生するのではなく、実際にはサブスクリプション マネージャーを使用して最近のサブスクリプションをキャッシュし、繰り返しデータを送信しないようにすることから発生します。 .
この問題に対する狡猾な解決策を提案できる人はいますか?
meteor - Meteor のローカル ストレージに格納するのに適したデータベース (サイズ) はどれくらいですか?
私はしばらく Meteor を使用しており、このフレームワークに完全に恋をしています。しかし、私には1つの好奇心があります。
Meteor はブラウザのローカル ストレージにデータベースのレプリカを 1 つ保持します。ただし、場合によっては、たとえば約 100,000 人のユーザーがいる Web サイトでユーザーの詳細を取得する場合、このコレクションを公開せず、呼び出し/メソッド関数を使用してサーバーからこの情報を直接取得する方が理にかなっています。
では、Meteor がデータベースをローカル ストレージに格納する方法と場所を理解したいと思いますか? ユーザーのブラウザのパフォーマンスに影響を与える前に保持する必要があるデータベースの最大数は?
回答ありがとうございます。
javascript - Meteor: API からキャッシュされた minimongo の結果を取得する
かなりうまく機能しているサードパーティの API からユーザーのリストを取得しています。ただし、クリックしてユーザーの詳細を表示するときに、キャッシュされたユーザーのコレクション (minimongo) からの結果を使用したいと思います。それ以外の場合は、データを取得するために別の API 呼び出しを行います。
ただし、ユーザーの詳細ルートで少し奇妙なことが起こっています。User.findOne(this.params._id) の結果をログに記録すると、User オブジェクトがログに記録され、次に「undefined」がログに記録されます。
これは可能ですか、それとも訪問者がユーザー詳細ページを表示するたびに API 呼び出しを行う必要がありますか?
ルート:
コレクション:
ユーザーページ: (ヘルパーも作成しようとしましたが、同じ結果が得られました)
meteor - meteor ルーターで無限ループを回避するにはどうすればよいですか?
顧客がストア内の製品をカスタマイズできるオンライン ストアを流星に構築しています。Inventory
すべての製品データを保存し、ユーザー入力に応じて更新されるというクライアントのみのコレクションをセットアップしました。ユーザーがチェックアウトする準備ができたら、製品データを というクライアントおよびサーバー側のコレクションにダンプしますShoppingCart
。ユーザーが製品に戻って編集内容を修正できるようにしたいので、一致が見つかった場合にからデータを取得Inventory
するようにルーターをセットアップします。$set
ShoppingCart
Inventory
Inventory
編集:これにより、データが変更されるたびにルーターメソッドが無限ループに陥るようです。この問題を回避する方法はありますか? この種のデータをすべて処理するための、考慮すべきより良い方法はありますか?
javascript - Meteor / Mongoを介してサブドキュメント配列を返す
サブドキュメントに追加するタグを返したり表示したりするのに少し問題があります。タグ付けは問題ないのですが、タグごとに商品にラベルを付けたいです。サブドキュメント内の配列内のアイテムを返すのに役立つリソースが見つかりません。私が立ち往生しているのはすべてのヘルパーだと思います-基本的に「Items.(this._id).itemTags.find();」を書く構文的に正しい方法です。:)
ああ、HTML と JS の多くを削除しましたが、その他はすべて正常に動作しています。コレクションは "Items" で、サブドキュメントは "itemTags" で、挿入時に "itemTags: []" で設定されます。私のテスト環境では、"Cats" と "Dogs" をタグとして追加し、"Items.find().fetch();" を介してオブジェクトを調べることで動作を確認できます。しかし、それらを表示するのに苦労しています。
HTML:
JS:
データベース スキーマ (insert コマンドで表示):
meteor - 外部ドキュメントに属する配列内のドキュメントを更新する方法は?
次のドキュメントがあります。
mainDoc.monitors
次のドキュメントの配列です。
サーバーに次の権限を設定しました
これまでクライアントでこれを試しました:
しかし、埋め込まれたドキュメントではなく、完全なドキュメントしか取得できません。
問題は、innerDoc.style
ブラウザから直接更新するにはどうすればよいかということです。