0

私は Transcrypt でコンパイルする非常に Python-ic スクリプトを持っていますが、問題は、私が持っている外部の依存関係の 1 つは、インポートする必要があるということですgoogle-cloud-bigquery。これは明らかにトランスパイル プロセス中にエラーをスローしますが、API は JavaScript (私のターゲット コンパイル) で利用できるようですが、 <script src="https://apis.google.com/js/client.js"> Transcrypt は私の index.py ファイルをトランスパイルします。この JS スクリプトを Python 内に配置することはできません。ファイル(私が知っている)なので、どのように実装しますか?

Numscrypt などの他のモジュールが Transcrypt から利用できることは知っていますが、実際にモジュールを Python ファイル内に追加するにはどうすればよいですか?

4

2 に答える 2

1

ライブラリの JavaScript バージョンを使用する必要があり<script>ます。前述のように HTML ファイルのタグにインポートを配置するのが最も簡単な方法です。その時点でライブラリはグローバル名前空間にあるため、Python プログラムのどこからでもライブラリを呼び出すことができます。

Parcel や Webpack などのバンドラーを使用していて、npm を使用してライブラリをローカルに保存する場合は、Node.jsrequire()関数を使用して、次のような Python 変数に割り当てることができます。

fabric = require('fabric')

それ以外の場合は、ホストされた場所から JS ライブラリをロードする必要があり、Python 内から実行したい場合は、Transcrypt docsで説明されているように、次のような Transcrypt プラグマ コンパイラ ディレクティブを使用して JavaScript で実行できます。

fabric = __pragma__ ('js',
    '''
(function () {{
    var exports = {{}};
    {}  // Puts fabric in exports and in global window
    delete window.fabric;
    return exports;
}}) () .fabric;
    ''',
    __include__ ('com/fabricjs/fabric_downloaded.js')
)
于 2020-08-09T18:30:36.883 に答える