Browserify et @google/earthengine : regroupez l'accès et l'analyse modulaires des données géospatiales JavaScript dans des fichiers utilisables par le navigateur
P粉208469050
2023-08-15 17:45:55
<p>J'essaie d'utiliser Browserify pour importer l'API Javascript de Google Earth Engine. </p>
<p>J'ai installé ce module : </p>
<pre class="brush:php;toolbar:false;">npm install --save-dev @google/earthengine</pre>
<p>J'ai créé un nouveau fichier main.js à des fins de test : </p>
<pre class="brush:php;toolbar:false;">var md = require('@google/earthengine');
module.exports = MDOutSystems ;
fonction MDOutSystems() {
this.mdInstance = md;
} ;
MDOutSystems.prototype.data.authenticateViaPrivateKey = fonction (
privateKey, opt_success, opt_error, opt_extraScopes,
opt_suppressDefaultScopes) {
md.data.authenticateViaPrivateKey(privateKey, opt_success, opt_error, opt_extraScopes,
opt_suppressDefaultScopes);
} ;
MDOutSystems.prototype.initialize = fonction() {
md.initialize();
} ;
MDOutSystems.prototype.Image = fonction (source) {
md.Image(source);
} ;
MDOutSystems.prototype.getInstance = fonction () {
renvoie this.mdInstance ;
}</pré>
<p>(J'ai reçu un avertissement indiquant que je dois créer un fichier d.ts avec le module <code>declare '@google/earthengine'</code>)</p>
<p>J'utilise le code suivant pour exposer le module que j'ai créé : </p>
<pre class="brush:php;toolbar:false;">Parcourir main.js --standalone MDOutSystems > google-earth-outsystems.js</pre>
<p>Cependant, lorsque j'essaie d'appeler </p>
<pre class="brush:php;toolbar:false;">var ee = new MDOutSystems();</pre>
<p>Je reçois une erreur disant "MDOutSystems n'est pas défini". </p>
<p>Aide. </p>
<p>J'ai essayé de déplacer main.js dans le dossier /node_modules et d'exécuter à nouveau la commande browserify. Cela a en fait abouti à un fichier google-earth-outsystems.js complètement différent, mais cela n'a toujours pas fonctionné. </p>
Je suppose que le navigateur compressera le code et modifiera le nom de la fonction.
MDOutSystems()
Il sera méconnaissable après ça.Attachez vos méthodes à l'objet
window
.Comme ça :