• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

380
Views
Reaccionar accesorios predeterminados de componentes funcionales frente a parámetros predeterminados

En un componente funcional de React, que es el mejor enfoque para establecer accesorios predeterminados, usando Component.defaultProps o usando los parámetros predeterminados en la definición de la función, ejemplos:

Accesorios predeterminados:

 const Component = ({ prop1, prop2 }) => ( <div></div> ) Component.defaultProps = { prop1: false, prop2: 'My Prop', }

Parámetros predeterminados:

 const Component = ({ prop1 = false, prop2 = 'My Prop' }) => ( <div></div> )
about 3 years ago · Santiago Trujillo
3 answers
Answer question

0

defaultProps en los componentes funcionales eventualmente quedarán obsoletos (según Dan Abramov, uno del equipo central) , por lo que para el futuro vale la pena usar parámetros predeterminados.

about 3 years ago · Santiago Trujillo Report

0

En general (ES6), la segunda forma es mejor.

En específico (en el contexto de React), la primera es mejor ya que es una fase principal en el ciclo de vida del componente, es decir, la fase de inicialización.

Recuerde, ReactJS se inventó antes de ES6.

about 3 years ago · Santiago Trujillo Report

0

El primero puede causar algunos problemas de rendimiento difíciles de depurar, especialmente si está utilizando redux.

Si está utilizando objetos, listas o funciones, serán objetos nuevos en cada renderizado. Esto puede ser malo si tiene componentes complejos que verifican la identidad del componente para ver si se debe volver a renderizar.

 const Component = ({ prop1 = {my:'prop'}, prop2 = ['My Prop'], prop3 = ()=>{} }) => {( <div>Hello</div> )}

Ahora eso funciona bien, pero si tiene un componente y estado más complejo, como componentes conectados de reacción-redux con conexión de base de datos y/o ganchos de efecto de reacción, y el estado del componente, esto puede causar una gran cantidad de reinterpretación.

En general, es una mejor práctica tener objetos de utilería predeterminados creados por separado, por ejemplo.

 const Component = ({prop1, prop2, prop3 }) => ( <div>Hello</div> ) Component.defaultProps = { prop1: {my:'prop'}, prop2: ['My Prop'], prop3: ()=>{} }

o

 const defaultProps = { prop1: {my:'prop'}, prop2: ['My Prop'], prop3: ()=>{} } const Component = ({ prop1 = defaultProps.prop1, prop2 = defaultProps.prop2 prop3 = defaultProps.prop3 }) => ( <div>Hello</div> )
about 3 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error