Browserify と @google/earthengine: JavaScript モジュラー地理空間データ アクセスと分析をブラウザーで使用可能なファイルにパッケージ化します。
P粉208469050
2023-08-15 17:45:55
<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>
おそらくブラウザはコードを圧縮し、関数名を変更すると思います。
MDOutSystems()
はそれ以降認識されなくなります。メソッドを
###このような:### リーリーwindow
オブジェクトにアタッチします。