Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

379
Views
Hacer que fetch() funcione tanto en el navegador como en el nodo

Tengo un pequeño complemento de mecanografiado que se ejecuta en el navegador, que usa fetch , por ejemplo, fetch(url) .

Para probar el complemento usando mocha, mocha se ejecuta en un entorno de nodo y, debido a esto, no se implementa la fetch .

Se puede hacer que funcione en el nodo usando:

 declare const require: any fetch = require('cross-fetch'); fetch(url)

Sin embargo, la instrucción require genera un feo error cuando se ejecuta en el navegador.

Idealmente me gustaría tener algo como:

 if(typeof fetch !== 'undefined'){ const fetch = require('cross-fetch'); } fetch(url)

Sin embargo, esto obviamente alcanza la búsqueda de la declaración if y no se puede usar globalmente. si lo intento

 if(typeof fetch !== 'undefined'){ fetch = require('cross-fetch'); }

Luego, el mecanografiado se queja de que la fetch ya está definida como una función (el mecanografiado se basa en el entorno del navegador). Entonces no compilará.

¿Hay alguna manera de 1.) decirle a mecanografiado que la fetch podría NO estar definida aunque crea que lo está, o 2.) habilitar la fetch globalmente de alguna otra manera?


Meta-pregunta: ¿cómo están probando otras personas su javascript basado en navegador? Seguramente hay una manera más fácil que hacer que javascript funcione en un entorno de nodo.

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!