Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

315
Vistas
¿Cómo convertir esta función de flecha en una función normal?

Esto es de un componente secundario en Vue.js. Estoy tratando de pasar algunos datos del padre en sensorData , pero el enlace no ocurre porque el código a continuación usa una función de flecha para data . ¿Cómo puedo convertir esta función en una función normal para que this enlace esté disponible?

 export default { name: "SensorChart", props: ["sensorData"], data: () => ({ chartOptionsLine: { xAxis: { data: ["A","B","C","D","E","F","G"] }, yAxis: { type: "value" }, series: [ { type: "line", // data: this.sensorData data: [910, 423, 61, 752, 262, 3625, 119] } ], title: { text: "Sample Data", x: "center", textStyle: { fontSize: 20 } }, color: ["#1271c2"] } }) };
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Esto funcionó bien.

 export default { name: "SensorChart", props: ["sampleData","sampleLabels"], data: function() { return { chartOptionsLine: { xAxis: { data: this.sampleLabels }, yAxis: { type: "value" }, series: [ { type: "line", data: this.sampleData } ], title: { text: "Sensor Data", x: "center", textStyle: { fontSize: 24 } }, color: ["#127ac2"] } } } };
about 4 years ago · Juan Pablo Isaza Denunciar

0

Una expresión de función de flecha es una alternativa compacta a una expresión de función tradicional, pero está limitada y no se puede usar en todas las situaciones.

Existen diferencias entre las funciones de flecha y las funciones tradicionales, así como algunas limitaciones:

  • Las funciones de flecha no tienen sus propios enlaces a this, arguments o super, y no deben usarse como métodos.
  • Las funciones de flecha no tienen acceso a la palabra clave new.target.
  • Las funciones de flecha no son adecuadas para los métodos de llamada, aplicación y vinculación, que generalmente se basan en establecer un alcance.
  • Las funciones de flecha no se pueden utilizar como constructores.
  • Las funciones de flecha no pueden usar yield, dentro de su cuerpo.

para más detalles allí:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions#comparing_traditional_functions_to_arrow_functions

Entonces, si desea usar la forma tradicional, puede usar esto.

 export default { ... data: function() { return {...} } }

si desea utilizar la función de flecha, si bien las funciones de flecha no tienen su propio puntero this, solo se pueden pasar argumentos cuando se llama a una función a través de call() o apply() (de esta manera no se puede enlazar esto).

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda