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

370
Visualizações
¿Cómo paso una matriz de PHP a Vue.js?

Tengo un archivo trainers.inc.php que genera una matriz con datos extraídos de una base de datos:

 $trainers_meta[0] = array('Id' => $id, 'Name' => $name, 'Description' => $description, 'Experience' => $experience, 'Focus' => $focus, 'Fileformat' => $format, 'File' => $file);

Codifiqué la matriz PHP como JSON usando la función PHP json_encode() :

 $trainers_meta = json_encode($trainers_meta);

La conversión se realizó sin advertencias ni errores que verifiqué específicamente. En la parte superior de mi archivo index.php necesito el archivo trainers.inc.php :

 require_once('trainers.inc.php');

En la parte inferior del archivo, creo una variable de JavaScript con los contenidos JSON convertidos dentro de una etiqueta <script> :

 <script> let trainersMeta = <?php echo $trainers_meta;?>; </script>

En la parte inferior del archivo, enlazo el CDN de Vue.js:

 <script src="https://cdn.jsdelivr.net/npm/vue@3.2.26"></script>

Arriba, en el archivo index.php , trato de repetir el código HTML usando el atributo v-for de Vue.js:

 <div class="container" v-for="trainer in trainersMeta"> <h1>Should appear on the page</h1> </div>

Pero nunca aparece ningún contenido. Mi IDE me advierte que la variable trainersMeta no está definida. Entiendo que Vue.js debe ver la variable antes de que se cargue, por eso la inicializo antes de importar su CDN. Además, no importa en qué archivo o posición coloque la etiqueta <script> en la variable, siempre está indefinida. No puedo simplemente inicializar la variable dentro del código Vue.js porque Vue.js es completamente incompatible con PHP en este sentido. Incluso poner todo el código de Vue.js dentro de una etiqueta <script> en index.php no funciona y el código de Vue.js simplemente nunca se compila debido a eso. ¿Cómo puedo pasar una variable codificada PHP JSON a Vue.js para que la vea/utilice?

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

0

Por lo que vale, nunca he usado Vue.js antes de hoy. Todo lo que he recopilado, lo recogí en unos 5 minutos de la documentación .

Tienes:

  • creó una variable ( trainersMeta )
  • creó una plantilla ( <div class="container" )
  • cargó la biblioteca Vue ( <script ).

no has :

  • escribió una aplicación Vue para usar esos datos

Debe crear un objeto que tenga un método de datos que devuelva el objeto que ha creado, y debe llamar a Vue.createApp con ese objeto y luego montarlo en un contenedor alrededor de su plantilla.

Tal:

 <script> let trainersMeta = { Id: 123, Name: 'Bob' }; </script> <div id="app"> <div class="container" v-for="trainer in trainersMeta"> <h1>Should appear on the page</h1> {{trainer}} </div> </div> <script src="https://cdn.jsdelivr.net/npm/vue@3.2.26"></script> <script> const Trainers = { data() { return { trainersMeta } } } Vue.createApp(Trainers).mount('#app') </script>

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