8

PouchDBに似たものがあれば素晴らしいでしょう。

現在のキー値ストレージ ( AsyncStorage) は、データを保存してクエリするには明らかに不十分です。

4

5 に答える 5

6

PouchDB で asyncstorage-downを使用できる場合があります。通常、Node.js で LevelDOWN アダプターを使用する方法は次のようになります。

var PouchDB = require('pouchdb');
var db = new PouchDB('mydb', {db: require('asyncstorage-down')})

ただし、これはテストしていません。

編集:あなたは幸運です。最近、 pouchdb-async-storageに多くの作業が行われました。これを機能させる方法については、近日中にブログ投稿を予定しています。

于 2015-05-02T19:08:12.013 に答える
1

反応ネイティブで PouchDB を動作させるのにいくつか問題がありましたが、SQLLite をインストールしたくありませんでした。そこで、Async Storage 用のアダプターを作成します。

GitHub npm

React の不足しているパッケージをポリフィルし、「asyncstorage-down」に基づく非同期ストレージ アダプターを追加しました。適切にそれは役立ちます。

于 2016-04-18T08:45:14.647 に答える
1

Stockulus の非同期ストレージ アダプター ( https://github.com/stockulus/pouchdb-react-native ) を使用してみましたが、リモート CouchDB サーバーへの複製に問題がありました。

現在、React ネイティブ SQLite ストレージ ( https://github.com/andpor/react-native-sqlite-storage ) と PouchDB カスタム ビルド パターン ( https://pouchdb.com/2016/06/06/introducing- pouchdb-custom-builds.html ) のように:

'use strict';

import PouchDB from 'pouchdb-core'

// POLYFILLS - adapted from https://github.com/pouchdb/pouchdb/issues/3787#issuecomment-234618747
global.Buffer = global.Buffer || require('buffer').Buffer;
global.atob = global.atob || require('atob');
global.btoa = global.btoa || require('btoa');
require('blob-polyfill');

import SQLite from 'react-native-sqlite-storage';
global.openDatabase = SQLite.openDatabase; // Expose for websql adapter
GLOBAL.openDatabase = SQLite.openDatabase;

PouchDB
    .plugin(require('pouchdb-adapter-websql'))
    .plugin(require('pouchdb-adapter-http'))
    .plugin(require('pouchdb-replication'))

export default PouchDB

私はグローバルが醜いことを知っています。使い始めたばかりで、レプリケーションがうまく機能しています。また、多数のノードをポリフィルする必要がありました。これは、pouchdb-core によって使用されますが、pouchdb-core の依存関係として指定されていません。フィードバックをお待ちしております。

現在これらのパッケージを使用しています:

"events": "^1.1.1",
"pouchdb-adapter-http": "6.0.6",
"pouchdb-adapter-websql": "6.0.6",
"pouchdb-core": "6.0.6",
"pouchdb-replication": "6.0.6",
"atob": "^2.0.3",
"blob-polyfill": "^1.0.20150320",
"btoa": "^1.1.2",
"buffer": "^5.0.0",

ありがとう

于 2016-10-12T15:57:25.433 に答える
1

PouchDB はブラウザー用に構築されているため、少し努力すればおそらく React Native でも動作する可能性があります。

https://github.com/almost/react-native-sqliteを見たことがありますか?

于 2015-05-02T02:21:22.650 に答える