Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

167
Visualizações
Identificador inesperado 'getProject'. Esperado ';' después de la declaración de variable asíncrona

Tengo el siguiente JS en una página web.

 <script async type="module"> import {projectCode} from "./assets/js/config.js"; import {getProject} from "./assets/js/saleproject.js"; import {getAccount} from "./assets/js/account.js"; import Vue from 'https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.esm.browser.js' let projectData = await getProject(projectCode); ... </script>

Luego, los datos se almacenan en Vue.js para representar una página. Para mayor contexto, lo anterior hace referencia al siguiente código en un archivo separado:

 import { server } from './config.js'; export async function getProject(projectCode) { const response = await fetch(server + '/saleproject/GetByCode/' + projectCode); const projectData = await response.json(); return projectData; }

Todo funciona bien, excepto en iPhones, donde recibo el siguiente error que rompe mi código e impide que Vue.js represente la página:

 SyntaxError: Unexpected identifier 'getProject'. Expected ';' after variable declaration.

Intenté envolverlo en una función asíncrona como esta, pero aún no tuve suerte:

 (async function () { let projectData = await getProject(projectCode); }())

Lo que devuelve un error relacionado con Vue.js:

 Error in data(): "ReferenceError: projectData is not defined"

No estoy seguro de qué se debe cambiar para que esto funcione correctamente en iPhones (funciona bien en Safari de escritorio)

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Su intento de solución es correcto, el único problema es que let está dentro del alcance de IIFE.

Vuelva a escribir su código de la siguiente manera:

 getProject(projectCode).then(projectData => { // All code goes here });

El problema original se debe a la falta de soporte de espera de nivel superior.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda