検索

ホームページ  >  に質問  >  本文

Browserify と @google/earthengine: JavaScript モジュラー地理空間データ アクセスと分析をブラウザーで使用可能なファイルにパッケージ化します。

<p>Browserify を使用して Google Earth Engine の Javascript API をインポートしようとしています。 </p> <p>このモジュールをインストールしました: </p> <pre class="brush:php;toolbar:false;">npm install --save-dev @google/earthengine</pre> <p>テスト目的で新しい main.js ファイルを作成しました: </p> <pre class="brush:php;toolbar:false;">var md = require('@google/earthengine'); module.exports = MDOutSystems; 関数 MDOutSystems() { this.mdInstance = md; }; MDOutSystems.prototype.data.authenticateViaPrivateKey = function( privateKey、opt_success、opt_error、opt_extraScopes、 opt_suppressDefaultScopes) { md.data.authenticateViaPrivateKey(privateKey, opt_success, opt_error, opt_extraScopes, opt_suppressDefaultScopes); }; MDOutSystems.prototype.initialize = function() { md.initialize(); }; MDOutSystems.prototype.Image = 関数(ソース) { md.Image(ソース); }; MDOutSystems.prototype.getInstance = function () { this.mdInstance を返します。 }</pre> <p>(<code>declare module '@google/earthengine'</code> を使用して d.ts ファイルを作成する必要があるという警告を受け取りました)</p> <p>次のコードを使用して、作成したモジュールを公開します。</p> <pre class="brush:php;toolbar:false;">Browserify main.js --standalone MDOutSystems > google-earth-outsystems.js</pre> <p>しかし、</p> を呼び出そうとすると、 <pre class="brush:php;toolbar:false;">var ee = new MDOutSystems();</pre> <p>「MDOutSystems が定義されていません」というエラーが表示されます。 </p> <p>ヘルプ。 </p> <p>main.js を /node_modules フォルダーに移動し、browserify コマンドを再度実行してみました。これにより、実際にはまったく異なる google-earth-outsystems.js ファイルが作成されましたが、それでも機能しませんでした。 </p>
P粉208469050P粉208469050531日前544

全員に返信(1)返信します

  • P粉545218185

    P粉5452181852023-08-16 00:24:47

    おそらくブラウザはコードを圧縮し、関数名を変更すると思います。

    MDOutSystems() はそれ以降認識されなくなります。

    メソッドを window オブジェクトにアタッチします。

    ###このような:### リーリー

    返事
    0
  • キャンセル返事