2

Python モジュールとして利用できる素晴らしい Python 3 から Javascript へのコンパイラであるTranscryptをとても楽しんでいます。私のコードのほとんどは同期的ですが、setTimeout と XHR リクエストを使用しても問題はありませんでした。今、私はローカル永続性のために PouchDB の使用を開始し、promise を処理するきれいな方法を見つけようとしています。現在、pouchdb インスタンスに書き込むためにこれを行っています。

def db_put():

    def put_success(doc):
        print("Put a record in the db. Id: ", doc.id, "rev: ", doc.rev)

    def put_failure(error):
        print('Failed to put a record in the db. Error: ', error)

    strHello = {'_id': "1", 'title': 'hello db'}
    db.put(strHello) \
    .then(put_success) \
    .catch(put_failure)

db = PouchDB('test_db')
document.getElementById("db_put").addEventListener("click", db_put)

これは問題なく動作しますが、promise が Python から Javascript にトランスクリプトされることについて、いくつか知りたいことがあります (これにより、狂気から救われるかもしれません)。

  • これを処理するためのより好ましい「pythonic」方法はありますか?
  • Transcrypt を介して ES7 の async / await を利用できますか? Transcrypt を使用すると、Javascript 関数に Python コード内から直接アクセスできるようになるため、ここで得られないトリックがあるのではないかと考えました..

ありがとう!

4

2 に答える 2