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

111
Views
¿Por qué podemos usar cualquier nombre de utilería en la función reaccionar sin una mención explícita?

Estoy aprendiendo mobX-state-tree, y en su código de tutorial, veo esto

 const App = observer(props => ( <div> <button onClick={e => props.store.addTodo(randomId(), "New Task")}> Add Task </button> {values(props.store.todos).map(todo => ( <div key={todo.id}> <input type="checkbox" checked={todo.done} onChange={e => todo.toggle()} /> <input type="text" value={todo.name} onChange={e => todo.setName(e.target.value)} /> </div> ))} </div> )); render(<App store={store} />, document.getElementById("root")); //store???

Tengo un poco de confusión, ¿dónde se mencionó store ? Por qué podemos usar store como prop, pero no prop={store} , por ejemplo, si cambio store a otra cosa, diga "abcxyz", entonces aparece el error Cannot read properties of undefined (reading 'todos') . Entonces, ¿por qué tenemos una tienda aquí? Por favor dime, muchas gracias

Su código: https://codesandbox.io/s/310ol795x6?file=/index.js

Su tutorial, esta fue la selección "Cómo llegar a la interfaz de usuario" : https://mobx-state-tree.js.org/intro/getting-started

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Debería publicar lo que está tratando de hacer, pero creo que necesita comprender los conceptos básicos del objeto javascript y cómo funciona la reacción.

Puedes usar cualquier nombre como accesorio. Pero si elige prop={cualquier objeto}. Tienes que usarlo dentro de tu observador de aplicaciones como:

 const App = observer(props => ( <div> <button onClick={e => props.prop.addTodo(randomId(), "New Task")}> Add Task </button> {values(props.prop.todos).map(todo => (

El valor que se pasa dentro de las llaves también puede ser cualquier cosa, en este caso están definiendo store como

 const store = RootStore.create({ users: {}, todos: { "1": { id: id, name: "Eat a cake", done: true } } });

si utiliza

 <App store={store} />

el objeto props dentro del observador será

 { store: { users: {}, todos: { "1": { id: id, name: "Eat a cake", done: true } } } }

ahora si usas

 <App prop={store} />

el objeto props dentro del observador será

 { prop: { users: {}, todos: { "1": { id: id, name: "Eat a cake", done: true } } } }

como puede ver, ya no tiene el almacén de propiedades, por lo que si mantiene props.store.todos, el almacén de propiedades no está definido.

Salud.

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!