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 コード内から直接アクセスできるようになるため、ここで得られないトリックがあるのではないかと考えました..
ありがとう!