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

423
Views
Los datos del gráfico se muestran en console.log pero no en la página (usando Axios/Vue)

Estoy tratando de usar axios para obtener datos para mi gráfico, pero no podía saber cómo hacer que apareciera en el lienzo, puedo ver los valores en el archivo console.log como se muestra a continuación.

Console.log , no estoy muy seguro de lo que está sucediendo, aquí está mi código:

 mounted(){ const ctx = document.getElementById('myChart'); let myData = []; const myChart = new Chart(ctx, { type: 'line', data: { labels: [....], datasets: [{ data: this.myData, backgroundColor: [ ['blue']], }] }, options: {.....} }); myChart;

aquí está el método:

 created: function(){ this.getData();} , methods: { getData : function(){ axios.get('http://localhost:3000/Chart/chartjs') .then(resp => {this.myData = resp.data console.log(resp.data); }) }
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

su problema está relacionado con los fundamentos de reactividad de VueJS. Como está declarando una variable local en el método montado e intentando acceder a la propiedad myData en esto sin declararla en el componente, VueJS no actualizará la interfaz de usuario.

Por la forma en que presentó su código, asumiré que está utilizando VueJS3 con la API de opciones.

Para tener un componente reactivo, debe declarar un estado reactivo. Esto generalmente se hace antes del método montado().

 export default { data() { return { myData: [] } }, mounted() { ...

Luego, en sus métodos montados y getData, en lugar de declarar myData, debe usar this.myData . VueJS se encargará de la reactividad.

Además, noté que estás tratando de acceder directamente al DOM. Esto no es habitual ni recomendado en VueJS. Debe usar un enlace para asegurarse de que sus propiedades se actualicen correctamente.

about 4 years ago · Juan Pablo Isaza Report
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!