問題タブ [pouchdb]
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.
angularjs - angular jsでpouchdbを複製する方法
Couch DB を使用して、cordova ionic アプリの場所を保存しています。また、データの複製に PouchDB を使用しています。すべてうまく機能していますが、アプリケーションを続行する前に最初のレプリケーションが完了していないようです。そのため、2 回目にページに入るまでデータが表示されません。「完了」オプションが機能していないようです (または、アラートが発生しないため、使用方法がわかりません)。私はすべてを解決しようとしましたが、変化はありませんでした。
角度サービスの私のコードは次のとおりです。
couchdb - PouchDB の Puton の代替品はありますか? (Futon - CouchDB 相当)
CouchDB には驚くべき Futon インターフェイスがあり、データベースの操作が非常に簡単になります。
PouchDB には、同様の機能を提供することを目的とした同等の Puton ( http://puton.jit.su/ ) がありました。問題は、それがうまくいかないことです。Github のコードを見ると、このプロジェクトは死んでいるように見えます (最後のコミットは 1 年以上前です)。
PouchDB データベースを視覚的に閲覧する他の方法はありますか? 私は何も見つけていないし、実際に使っている人はあまりいないようだ。
javascript - サーバーを必要とする JavaScript (PouchDB) をテストする方法
PouchDB ライブラリを使用するいくつかの js で単体テストを作成したいと考えています。PouchDB を使用するには、単純な HTTP サーバーを起動する必要があります*。
私のファイル構造は /public (提供されるすべての html および js) /specs (すべての js および ruby 仕様ファイル) です。
/public フォルダーで (ラックアップのように) サーバーを起動すると、/specs フォルダーのスペックにアクセスできなくなります (/public フォルダーが Web サーバーのルートになるため)。
/specs フォルダーでラックアップを開始すると、/public フォルダーでテストしたい js ファイルにアクセスできなくなります (/specs フォルダーが Web サーバーのルートになるため)。
私のスペックがパブリックフォルダーにあるように再構築すれば、これはうまくいくと思います。しかし、これはかなり不格好に思えます。specs フォルダー内でテストしている js ファイルを複製することもできると思います。繰り返しますが、これはかなりぎこちないようです。確かに、これを行うためのより良い方法があります。
*単純な http サーバーを実行せずに次の単純なコードを実行しようとすると、エラーが発生します。
私は得る:
リクエストは「拒否」状態で、「outcome=TypeError: 無効な 'in' オペランド i」が表示されます
「python -m SimpleHTTPServer」を使用して http サーバーで同じコードを試行すると、問題なく動作します (要求は満たされます)。
corruption - PouchDB の破損検出
オフライン機能を備えた Web アプリケーションを構築しています。私はそれを達成するためにwebcache
との組み合わせを使用しています。pouchDB
現在、DB の破損に対する回復メカニズムをテストしています。私の前提は、pouchDB はクライアントで実行されているため、誤ってまたは故意に DB を破損する可能性がある人に公開されているということです。また、バグなどが発生した場合、DB が破損する可能性があります。次に、DB が破損した場合、webapp によって検出されてクリーンアップされない限り、これは正しく機能しません。
テストは非常に簡単です: - PouchDB を作成します。
- 開発者ツールを使用して、データベースの一部を削除します。
- アプリケーションをロードすると、すべてのドキュメントを読み取ろうとします。
"Uncaught TypeError: Cannot set property '_rev' of undefined "
が投げられるのはこの時点です。例外をキャッチし、pouchDB によって提供された promise を使用しようとしましたが、どれも機能しませんでした。
同じような悩みを抱えた仲間はいませんか?どのように解決しましたか?
編集: PouchDB が 500 内部エラーを返した場合、アプリケーションはどのように回復するのでしょうか? データベースを破壊しようとした
しかし、それは機能しません。500 内部エラーも返します。
javascript - ポーチDBを使用して作成したローカルデータベースからデータをロードすることは本当に役に立ちますか?
ポーチDBを使用して作成したローカルデータベースからデータをロードすることは本当に役に立ちますか?
ポーチDBを使用した場合は、経験を共有してください。長所と短所。
ページの読み込み時に 1,00,000 レコードを読み込み、このデータに対して多くのクエリを実行する Web サイトがあります。
私がしたこと: 入門ガイドを使用してデータベースを作成します: http://pouchdb.com/getting-started.html
これについてワイルドカードクエリのようなものは可能ですか?
javascript - NodeJS 上の PouchDB を使用したドキュメントの添付
PouchDB を統合する AngularJS アプリがあります。PouchDB にドキュメントを追加したいのですが、ドキュメント (以下) からはあまり明確ではありません:
バイナリ オブジェクトをドキュメントに添付します。PouchDB の API のほとんどは JSON を処理しますが、大規模なバイナリ データ (PNG など) を処理している場合、単純に base64 または 16 進数でエンコードされた文字列として含めると、パフォーマンスまたはストレージのペナルティが発生する可能性があります。このような場合、バイナリ データを添付ファイルとして保存できます。詳細については、添付ファイルに関する CouchDB のドキュメントを参照してください。
使用例:
ノード内では、Blob の代わりに Buffer を使用する必要があります。
私のアプリでは、次のようになりました。
では、バッファを使用してファイルを DB に追加するにはどうすればよいですか? さらに、有効な docID、attachementID、および rev を自動的に生成することは可能ですか? また、MS Office ドキュメントのタイプは何でしょうか?
ありがとう!
pouchdb - PouchDB コンパクト() 呼び出し
私はcouchdb(couchappy.com)からpouchDBを複製しました。レプリケーションはライブではありません。特定の条件下で実行するだけです(アプリケーションのロード/初期化、エンドユーザーによる特定のオプションの変更など)。
私はcouchdbでいくつかのドキュメントを削除しましたが、それらはpouchdbで「削除済み」と表示されます。次に、pouchdb: db.compact() 呼び出しを圧縮したいと思いました。しかし、この呼び出しは、削除されたドキュメントにはあまり効果がないようです。
すでに counchdb を圧縮していることに注意してください。
私はpouchdb 2.2.0を使用しています。
誰もがpouchdbで実際にcompact()呼び出しが何をしているのか知っていますか? また、「削除された」ドキュメントを取り除く方法は?
乾杯、アルベルト