🚀 TODO lo que me hubiera gustado que me hubieran EXPLICADO cuando EMPECÉ con REACT

JAB
15 Mar 202344:53

Summary

TLDRThe speaker discusses common challenges faced by developers transitioning from JavaScript to React. They highlight the importance of understanding React's state-driven approach, the use of state over direct DOM manipulation, and the application of React-specific patterns like using map instead of traditional loops for rendering lists. The talk includes practical examples to illustrate these concepts, emphasizing the need for practice and learning from mistakes to effectively adopt a React-centric mindset.

Takeaways

  • 😀 The speaker discusses common issues faced by developers transitioning from JavaScript to React, emphasizing the need to change one's approach when working with React.
  • 🔍 It's highlighted that in React, direct DOM manipulation using selectors like `querySelector` or `getElementById` is not used; instead, state management is key.
  • 🚫 The script mentions that modifying elements or their properties directly, as is common in JavaScript, is not the React way; changes should be made through state variables.
  • 📝 The importance of understanding React's state is underscored, as it is more central to React than variable states are to JavaScript.
  • 🛠️ The script covers the use of `map` in React for looping over arrays, as traditional JavaScript loops like `for` or `forEach` are not used within JSX.
  • 🔄 The speaker explains that conditional rendering in React is done using ternary operators rather than `if` or `switch` statements, which are not suitable for inline usage in JSX.
  • 🛑 The script touches on the immutability of state in React, where direct modification of arrays or objects is not allowed and functional updates must be used instead.
  • 🔄 The use of the spread operator (`...`) is introduced as a way to create copies of arrays or objects when updating state in React.
  • 🔑 The importance of unique `key` props in React lists is mentioned, which helps React identify which items have changed, added, or removed.
  • 🎨 The script includes a practical example of creating a React component that changes color on click, demonstrating the principles discussed.
  • 📈 The speaker concludes by emphasizing the importance of practice in learning React, as understanding comes from making and correcting mistakes.

Q & A

  • What is the main challenge people face when transitioning from JavaScript to React?

    -The main challenge is the shift in approach. Experienced JavaScript developers may struggle with React because they tend to apply JavaScript concepts directly to React, which can lead to inefficiencies and confusion since React operates differently, focusing on state and component-based architecture.

  • Why is it not recommended to use JavaScript selectors in React?

    -In React, you should not use JavaScript selectors like `querySelector` or `getElementsByClassName` because React manages the DOM differently. Instead of directly manipulating the DOM, you should use state and props to control the UI, and React will handle the DOM updates.

  • How should you modify the style or content of an element in React?

    -In React, you should not modify the style or content of an element directly as you would in vanilla JavaScript. Instead, you should use state to control these properties, and changes to the state will automatically reflect in the UI.

  • What is the significance of state in React compared to JavaScript?

    -In React, state is even more important than in JavaScript. It controls the UI, and any changes to the state will trigger the component to re-render. It's the central point for managing variable values that affect the component's output.

  • Why should you avoid adding styles directly to elements in React?

    -Directly adding styles to elements in React, as you might do in HTML with JavaScript, is not recommended. Instead, you should use the `style` prop and define styles in an object, which allows React to manage the styles in a more controlled and efficient way.

  • How should you handle events in React components?

    -In React, events should be handled within the component itself, often using inline functions or event handlers defined within the component. This is different from JavaScript, where you might attach event listeners to elements in the DOM.

  • What is the recommended way to create lists or loops in React?

    -In React, you should use the `map` function to create lists or loops. This function allows you to iterate over an array and return a new array of elements, which can then be rendered within the component.

  • Why should conditional rendering be done differently in React?

    -Conditional rendering in React should be done using ternary operators or conditional (ternary) rendering inside the JSX, rather than using traditional JavaScript `if` statements or `switch` cases, because React's rendering is based on the return value of the component function.

  • How can you modify an array state in React?

    -To modify an array state in React, you cannot directly change an index as you would in JavaScript. Instead, you should use the `map` function to create a new array with the desired modifications or use array methods like `filter` to create a new array that excludes certain elements.

  • What is the purpose of the `key` prop in React elements?

    -The `key` prop helps React identify which items in a list are changed, added, or removed. It should be given to elements inside the array to give each element a unique identifier, which helps React efficiently update the DOM.

  • Why is practice important when learning React?

    -Practice is crucial when learning React because it allows you to make mistakes and understand where those mistakes occur. This hands-on experience helps solidify the concepts and teaches you to think in React's way, rather than trying to apply JavaScript concepts directly.

Outlines

00:00

😕 Challenges of Transitioning from JavaScript to React

The speaker discusses the common difficulties experienced by developers who are transitioning from JavaScript to React. They mention that while JavaScript knowledge is beneficial, a different approach is required for React. The speaker emphasizes the importance of understanding React's state management and the unsuitability of traditional JavaScript methods like direct DOM manipulation. They also highlight the need to avoid using JavaScript selectors in React and to manage state changes through state variables instead.

05:00

🛠️ Best Practices in React Development

This paragraph focuses on key aspects to consider when developing with React. It covers the inappropriateness of directly modifying the DOM or element properties as in JavaScript. The speaker explains that React relies on state and state changes to update the UI, rather than direct manipulation. They also touch on the use of events, conditional rendering, and the importance of using the 'map' function for loops instead of traditional JavaScript loops within JSX.

10:01

🔄 Modifying State in React: The Right Way

The speaker elaborates on the correct way to modify state in React, pointing out that direct modification of arrays or variables is not allowed. They explain the use of the 'map' function to create a new array with the desired changes and the necessity of using functional updates for objects. The paragraph also discusses the use of the spread operator for object manipulation and the importance of understanding these concepts to avoid common pitfalls when transitioning from JavaScript.

15:04

📐 Building a React Project with State Management

The speaker provides a walkthrough of creating a React project using 'create-react-app' and setting up state management. They demonstrate how to import state hooks, initialize state variables, and modify them within a component. The paragraph includes a practical example of rendering a list based on state data and the importance of using keys in React components for list rendering.

20:06

🎨 Dynamic Styling in React Components

This paragraph discusses how to dynamically change styles in React components. The speaker explains that direct manipulation of elements, as done in JavaScript, is not the React way. Instead, they show how to use state to change styles and how to bind event handlers to elements. The paragraph includes an example of changing an element's color upon a user action, emphasizing the use of functional components and hooks.

25:09

🔧 Practical Example of Conditional Styling in React

The speaker provides a detailed example of applying conditional styling in React. They demonstrate how to create a function that changes the color of an element based on user interaction. The explanation includes the use of arrow functions, event handling, and state updates to reflect changes in the UI. The paragraph also touches on the importance of passing the correct ID to the function to apply changes to the right element.

30:11

📝 Reflecting on the Live Coding Session and React Learning Curve

In this reflective paragraph, the speaker contemplates the effectiveness of live coding sessions compared to pre-recorded videos. They acknowledge the importance of practice in learning React and the value of making mistakes to understand the framework better. The speaker also hints at future topics they might cover, such as Redux, and expresses gratitude for the audience's engagement during the live session.

35:12

🗑️ Implementing Deletion Functionality in React

The speaker walks through the process of implementing a deletion feature in a React application. They explain how to create a button that, when clicked, triggers a function to remove an item from the state array. The paragraph details the use of the 'filter' function to create a new array without the item to be deleted, emphasizing the immutability of state in React and the correct way to update it.

40:13

🚀 Wrapping Up the Live Session and Looking Forward

In the concluding paragraph, the speaker wraps up the live coding session, expressing their intention to possibly create a follow-up video if the live session's audio was not clear enough. They thank the audience for their participation and discuss the possibility of providing a guide on deploying a React project. The speaker also reflects on their experience on YouTube and looks forward to reaching 10,000 subscribers.

Mindmap

Keywords

💡React

React is a popular JavaScript library used for building user interfaces, particularly single-page applications. It is central to the video's theme as the speaker discusses common issues developers face when transitioning from JavaScript to React. For instance, the script mentions 'trabajar con react' and 'enfoque que le damos es un enfoque que lo haríamos que sería como si lo hiciéramos con react', highlighting the learning curve and the shift in mindset required for effective React development.

💡JavaScript

JavaScript is a programming language that is essential for web development, and it's the basis for React. The video script frequently contrasts JavaScript with React, pointing out the differences in approach and mindset. For example, the speaker talks about 'la gente que viene desde javascript' and how their JavaScript experience can sometimes lead to confusion when starting with React.

💡State

In React, 'state' is an object that represents the part of the component that can change. The video emphasizes the importance of state in React, as it's more significant than in vanilla JavaScript. The script states 'para los que empezamos es el valor de las variables que con javascript es muy importante pero con ría lo es mucho más', indicating that managing state is crucial for dynamic UI updates in React.

💡JSX

JSX is a syntax extension for JavaScript that allows HTML-like structures to be used within JavaScript code, which is used in React for describing the UI. The script mentions 'lo que sería el html en react, se llama jsx', showing that JSX is a key concept for anyone learning React, as it's how developers describe what the UI should look like.

💡Map

The 'map' function in JavaScript is used to create a new array by transforming each item in the original array. In the context of the video, 'map' is highlighted as a crucial method in React for rendering lists or iterating over data. The script says 'un map porque un map nos permite recorrer un array', demonstrating its use in React for creating dynamic UI elements based on data.

💡Conditional Rendering

Conditional rendering in React allows components to render differently based on the state or props. The video script refers to this concept when discussing 'los condicionales pasa lo mismo con javascript', explaining that in React, conditional logic cannot be implemented using traditional JavaScript 'if' or 'switch' statements within JSX, but rather through ternary operators or other React-specific approaches.

💡Event Handling

Event handling in React involves setting up functions to respond to user interactions like clicks. The script touches on this with 'cuando queremos crear un evento con un clic por ejemplo lo ponemos directamente dentro de la propia caja', indicating that event handlers in React are attached directly to the elements that will trigger them, unlike in traditional HTML where they might be attached separately.

💡Direct Manipulation

Direct manipulation refers to modifying the DOM or elements directly using JavaScript. The video script mentions 'no podemos modificar directamente algún elemento alguna propiedad o algún contenido de un elemento del DOM', contrasting this approach with React's declarative paradigm where updates are made through state changes rather than direct manipulation.

💡Spread Operator

The spread operator in JavaScript is used to expand elements in arrays or properties in objects. In the context of the video, it's mentioned in relation to state updates in React, where 'el operador de propagación' is used to create copies of objects or arrays without modifying the original state directly.

💡Practice

The importance of practice in learning React is emphasized in the video, with the speaker stating 'pero para cambiar el enfoque tenemos que hacer mucha práctica'. The script suggests that understanding React comes from doing and making mistakes, which is a common theme in learning any new skill or framework.

Highlights

Discussing the common issues faced by developers transitioning from JavaScript to React, emphasizing the need to adjust one's approach.

React operates differently from traditional JavaScript, requiring developers to unlearn certain practices and adapt to a new paradigm.

Highlighting the importance of not using traditional JavaScript selectors in React, as React has its own methods for selecting elements.

Explaining that direct DOM manipulation is not allowed in React; instead, state management should be used for changes in the UI.

The significance of state in React is underscored, as it is more crucial than in JavaScript for managing UI changes.

Discussing the best practices for event handling in React, such as attaching event handlers directly within JSX elements.

Clarifying the misconceptions about using loops in React; instead of traditional loops, mapping over arrays is recommended.

The importance of conditional rendering in React is emphasized, with a focus on using ternary operators instead of traditional if-else statements.

Providing insights on how to modify arrays and objects in React state, noting that direct mutation is not allowed.

Introducing the concept of the spread operator in React for copying arrays and objects without mutating the original state.

Demonstrating the use of React's `filter` function to dynamically modify arrays within the state, as an alternative to traditional JavaScript methods.

The presenter shares personal experiences and learnings from their initial days with React, illustrating common pitfalls and how to overcome them.

A live coding session is initiated to demonstrate React concepts, providing a practical example of the discussed principles.

The process of creating a React project from scratch is shown, including setting up the environment and initial configurations.

An in-depth explanation of how to handle state changes in response to user interactions, such as clicks, in a React component.

The presenter addresses the importance of practice in learning React, emphasizing that making mistakes is a part of the learning process.

Concluding thoughts on the importance of adapting one's mindset when transitioning from JavaScript to React, and the value of persistence.

The presenter expresses intentions to cover advanced topics such as Redux in future sessions, based on audience interest.

A Q&A session is opened for the audience to ask questions related to the content covered in the live session.

Transcripts

play00:00

Vale entonces lo que hacemos Es Vamos a

play00:02

entrar en el plato fuerte de en el plato

play00:04

fuerte

play00:05

para hablar del tema de react a ver el

play00:08

problema que hay en muchas ocasiones que

play00:10

la gente que viene desde javascript

play00:13

la bien la gente que viene desde

play00:15

javascript tiene experiencia javascript

play00:18

habitualmente tiene problemas por el

play00:22

enfoque es decir sí que es verdad y

play00:24

todos sabemos que el día funciona bajo

play00:25

con javascript y que entender y saber

play00:28

haber trabajado con javascript nos da

play00:31

facilidad Porque no tenemos que es

play00:34

utilizar la misma sintaxis etcétera

play00:36

aparte de funcionalidades que tiene el

play00:38

día pero qué ocurre que muchas veces a

play00:42

la hora de practicar o de hacer

play00:45

cualquier cosa con el enfoque que le

play00:46

damos es un enfoque que lo haríamos que

play00:50

sería como si lo hiciéramos con react Y

play00:52

evidentemente eso hace que muchas veces

play00:54

para hacer una tontería para hacer

play00:57

cualquier tipo de aplicación cualquier

play00:58

chorrada podemos estar tres o cuatro

play01:01

horas dándole vueltas a las cosas

play01:03

saliendo errores que a veces no

play01:05

entendemos y

play01:07

desesperándonos y luego al cabo de

play01:10

buscar en internet buscar en chat gpt y

play01:12

mil cosas sale y no sabemos cómo

play01:14

Entonces yo cuando empecé ya hace tiempo

play01:17

reac Pues claro había cosas que al

play01:21

principio te dicen o intuyes Pero había

play01:24

otras cosas que no y yo le daba un

play01:26

planteamiento un planteamiento que le

play01:28

hacía con con javascript y siempre iba

play01:32

por el mismo problema Entonces yo voy a

play01:34

comentar una serie de cosas que son muy

play01:36

importantes tener en cuenta con día

play01:37

algunas ya las sabréis evidentemente y

play01:41

otras igual no y luego si queréis al

play01:43

final hacemos un ejemplo vale primero de

play01:45

los de los aspectos importantes que

play01:48

tenemos que tener en cuenta en que en

play01:50

riad no vamos a utilizar selectores de

play01:52

javascript es decir No utilizaremos ni

play01:54

el cueri selector ni el cuery selectoral

play01:55

ni el gettel en ni nada por el estilo no

play01:59

utilizamos selectores para seleccionar

play02:01

elementos del Domo

play02:02

si querría tiene un Hub que se llama

play02:04

Just red sirve para seleccionar un

play02:07

elemento pero no es el uso que le vamos

play02:09

a dar habitualmente y es una cosa bueno

play02:11

bastante excepcional con lo cual no

play02:15

podemos utilizar el cueri selector por

play02:17

ejemplo el segundo aspecto que viene

play02:19

ligado con el primero que podía ser el

play02:21

mismo es que no podemos como hacemos con

play02:24

javascript no podemos

play02:27

modificar directamente

play02:30

algún elemento alguna propiedad o algún

play02:33

contenido de un elemento del Don de una

play02:35

caja por ejemplo o de un botón con

play02:37

javascript hacemos el cuerix selector y

play02:39

luego puntos Select o classlist bueno y

play02:42

podíamos seleccionar directamente

play02:45

un elemento y poder modificarlo con

play02:47

react esto no lo podemos hacer no

play02:49

podemos acceder directamente un elemento

play02:51

y poder modificarlo Hay que hacerlo de

play02:54

otra manera tampoco podemos Modificar el

play02:57

contenido como hacemos con javascript

play02:58

que ponemos un html o ninsertz en html o

play03:02

un Apple y ahí añadíamos el contenido no

play03:05

tenemos que hacer de otra manera

play03:08

todo va como bien sabéis lo que habéis

play03:10

empezado con

play03:11

ría todo a través del Estado el estado

play03:13

para los que empecemos es el valor de

play03:15

las variables que con javascript es muy

play03:17

importante pero con ría lo es mucho más

play03:19

todavía si queremos por ejemplo

play03:21

Modificar el estilo Modificar el

play03:24

contenido lo tenemos que hacer con una

play03:26

variable o una variable que indique el

play03:28

valor de la propiedad que queremos

play03:30

modificar o bien el contenido el

play03:32

contenido de la variable y cuando

play03:33

modificamos ese valor automáticamente se

play03:37

modifica Pues el estilo o se modifica

play03:40

el contenido bien esto quiere decir que

play03:46

a la hora de programar con ríack todo va

play03:49

en el reto así como con html lo que

play03:53

hacíamos era crear un html puro sin

play03:56

Style Neon click ni nada por el estilo

play03:59

nada solo html y todo lo hacíamos dentro

play04:03

del código con react no lo haremos así

play04:06

se puede hacer pero por día todo lo

play04:08

vamos a poner dentro del reto como luego

play04:10

vamos a hacerlo soy muy bajo

play04:16

a ver ahora con con reac lo que haremos

play04:19

será colocar otro evento del Reto De

play04:23

hecho cuando queremos crear un evento

play04:26

con un clic por ejemplo lo ponemos

play04:28

directamente dentro

play04:32

dentro de la propia caja como con

play04:36

javascrita y se puede hacer pero estaba

play04:37

un poco mal visto con lo cual se coloca

play04:40

el Style el html no poníamos el atributo

play04:44

Style dentro de una caja estaba súper

play04:46

mal visto una mala práctica pero con

play04:48

reac lo haremos de esta manera poniendo

play04:50

un Style siempre queramos cambiar la

play04:53

propiedad la queramos cambiar de manera

play04:54

dinámica si la propiedad La queremos

play04:56

cambiar de entrada le pondremos un Class

play05:00

name normal que sea un Class y el css le

play05:03

pondríamos lo que queremos que tenga

play05:04

pero si no iría dentro del estilo

play05:08

esto cambia mucho la manera de hacer las

play05:11

cosas también otro de los problemas o

play05:16

cosas que tenemos que tener muy en

play05:18

cuenta aparte de Añadir a hilo dentro

play05:21

del reto en añadir los eventos y Añadir

play05:23

también el tema del Style es

play05:27

cuando queremos crear un bucle con

play05:32

javascript lo hacíamos dentro del código

play05:34

creamos una función en la función

play05:36

poníamos un forich un forín

play05:38

lo que queramos o incluso un map un wide

play05:41

aunque sea mejor que no y dentro de la

play05:45

función del código

play05:47

y accedíamos a lo que quisiéramos por

play05:50

ejemplo accedíamos al array a un valor

play05:53

de un array y lo lanzábamos a la caja

play05:56

correspondiente en realidad esto no lo

play05:59

vamos a hacer así aunque se podría hacer

play06:00

lo mejor es ponerlo dentro poner el

play06:03

bucle dentro de la caja dentro del dip o

play06:06

dentro de lo que sea dentro de un spam o

play06:11

dentro lo que queramos tenemos que

play06:13

ponerlo dentro del contenido la caja el

play06:16

tip estaría encerrada dentro de un bucle

play06:18

Qué quiere decir esto que no podemos

play06:20

utilizar el Ford ni el foro ni el foring

play06:23

ni nada por el estilo dentro del código

play06:27

dentro de lo que sería el html en react

play06:30

se llama jsx ahí no podemos poner un

play06:33

Ford tenemos que utilizar un map porque

play06:35

un map porque un map nos permite

play06:37

recorrer un array por ejemplo un array

play06:40

de objetos e ir devolviendo con una

play06:43

expresión ir accediendo cada uno de los

play06:46

datos y dentro de una expresión si

play06:48

ponemos un foro un forich no nos va a

play06:50

funcionar con lo cual esto quiere decir

play06:51

que el mapa es súper importante

play06:53

dominarlo porque la vamos a utilizar

play06:55

para todo el map es súper importante ya

play06:58

veremos que también es importante para

play07:00

otras cosas se escucha abajo

play07:03

no sé cómo quitar más

play07:06

a ver si puedo subir el volumen

play07:09

de alguna manera

play07:20

propiedades que está al máximo

play07:24

esto al máximo el volumen

play07:31

pero hemos podido en pantalla sí la idea

play07:33

es que sí que ahora haremos un ejemplo

play07:36

Julián Gracias por saludarme por el

play07:38

saludo a ver

play07:40

ponemos ahora lo haremos un mapa

play07:43

recorremos dentro de las cajas y dentro

play07:46

de cada uno del map podemos ir

play07:48

recorriendo un array y lo iríamos

play07:50

escribiendo pantalla pero solo se puede

play07:52

hacer utilizando map quiere decir que

play07:55

react no se puede utilizar for it se

play07:57

puede utilizar sin ningún tipo de

play07:58

problema pero nunca dentro del reto

play08:01

nunca dentro del código jsx siempre iría

play08:04

dentro de una función pero el map es

play08:06

bastante mejor y los condicionales pasa

play08:10

lo mismo

play08:10

con javascript nosotros podemos crear

play08:13

unir para detectar a partir de una

play08:17

condición detectar si

play08:19

podíamos por ejemplo dibujar una caja o

play08:21

no y resulta que con ría tenemos

play08:24

diferentes opciones pero si lo ponemos

play08:28

dentro dentro del

play08:32

dentro del return no podemos utilizar un

play08:35

If porque es un flujo no podemos

play08:37

utilizar un switch tenemos que utilizar

play08:38

los ternarios operadores ternarios que

play08:42

nos permiten como una expresión decir si

play08:45

una caja tiene que mostrarse o no

play08:47

pondríamos la condición luego lo haremos

play08:49

una condición y pondríamos la caja

play08:54

dentro si tiene si cumple la condición

play08:57

utilizaríamos el operador del

play08:59

interrogante cerrado y si no se cumple

play09:03

la condición en los dos puntos Vale y

play09:06

podríamos hacerlo de esta manera pero

play09:07

nunca lo haríamos con un con unir ni con

play09:12

un Suite quiere decir que no se puede

play09:14

utilizar se puede utilizar sin ningún

play09:16

problema el switch Pero dentro de

play09:18

funciones dentro del Código de

play09:19

javascript como lo haremos pero nunca

play09:22

dentro del rector

play09:24

y el otro punto muy importante

play09:27

Ya es donde hay más cambio

play09:31

es que el estado las variables los

play09:35

arrais no se pueden modificar

play09:37

directamente no podemos acceder a un

play09:41

array y Modificar el índice cero por

play09:43

otro valor no lo podemos hacer

play09:46

si utilizamos el Hook State lo que

play09:50

habéis empezado seguro que lo conocéis

play09:52

cuando nosotros creamos una variable en

play09:55

realidad es diferente javascript

play09:58

nosotros ponemos un con la variable

play10:00

igual a un valor o led o incluso bar

play10:03

Aunque mejor que no led Y luego podemos

play10:05

modificar esa variable a igual a 24 pero

play10:10

claro pondría que esto no pasa así

play10:12

tenemos que utilizar una función si es

play10:15

una variable numérica o de String no hay

play10:18

ningún tipo de problema

play10:19

pero cuando se trata de un array y

play10:22

queremos Modificar un índice el 0 el 1 2

play10:26

el 3 el que sea no lo podemos hacer como

play10:29

director

play10:31

Perdón no lo podemos hacer directo como

play10:34

lo hacemos con javascript que ponemos

play10:36

array y entre corchetes el índice el 0

play10:39

el 1 el 2 el 3 y luego le ponemos el

play10:41

valor no se puede hacer de esta manera

play10:42

sino que te lo que tenemos que hacer es

play10:44

recorrer todos los valores de la raíz

play10:47

desde el índice 0 hasta el último

play10:49

utilizando que

play10:51

utilizando map solo podemos utilizar

play10:54

Maps porque a diferencia entre map y

play10:56

forix por ejemplo forin es que map no

play11:00

modifica el valor lo que hace map es

play11:03

devolver una copia del valor por lo cual

play11:07

va fantástico el map es súper importante

play11:09

utilizarlo luego lo veremos y tenemos

play11:13

que recorrer todos y cuando vayamos al

play11:15

índice que queremos modificar lo

play11:16

modificamos

play11:17

Si queremos eliminar no podemos utilizar

play11:20

splies ni ni slide ni nada por el estilo

play11:23

tampoco podemos utilizar Push ni pop ni

play11:26

nada por el estilo los métodos antiguos

play11:28

de los de los anteriores no nos van a

play11:33

funcionar porque modifican modifican el

play11:35

estado Push o nada entonces todo salto

play11:39

hacemos con reviews por ejemplo o bien

play11:41

lo podemos hacer con filter o bien con

play11:45

por ejemplo

play11:47

bueno los el operador de propagación el

play11:51

operador de propagación por ejemplo que

play11:53

son los tres puntitos los tres puntitos

play11:55

con cerrado con un corchete Sería para

play11:58

hacer referencia a una raya entero luego

play12:01

lo veremos pero si lo encerramos entre

play12:03

llaves los tres puntitos el spray

play12:06

operator el operador de propagación

play12:08

haría referencia a un objeto súper

play12:11

importante el espíritu lo tenemos que

play12:13

utilizar para esto si por ejemplo

play12:15

queremos eliminar un valor eliminarlo no

play12:19

lo podemos hacer con splays

play12:21

porque si no modificamos el estado cómo

play12:23

lo hacemos Bueno pues lo podemos hacer

play12:25

con el filter y tú dirás Sí con el

play12:30

filter imaginaros que tenemos un array

play12:32

con Los Reyes godos

play12:35

o por cualquier elemento y queremos

play12:37

modificar queremos eliminar a uno de

play12:39

ellos eliminar por ejemplo a sisebuto o

play12:42

aún cualquier otro Pues bien lo que

play12:44

tenemos que hacer es seleccionar con

play12:45

filter todos los valores excepto el que

play12:49

el objeto nombre sea diferente a el que

play12:54

queremos eliminar con lo cual

play12:55

seleccionaría todos excepto ese por eso

play12:59

cuando utilizamos a raíz de objetos

play13:02

conviene poner un campo de tipo id para

play13:05

poder seleccionarlo porque si hubiera

play13:08

dos que se llamaran igual claro borraría

play13:10

los dos vale es decir Tenemos que tener

play13:13

en cuenta ese tipo de cosas si hacemos

play13:15

un enfoque centrado en javascript nos

play13:17

daremos de cabezazos siempre con el

play13:20

mismo punto

play13:21

Siempre

play13:23

vamos a hacer un ejemplo para que lo

play13:25

veamos vale esto lo podemos cerrar

play13:29

si encuentro el cursor aquí vale esto

play13:32

fuera

play13:34

aquí vale esto es un ejemplo de

play13:37

javascript vamos que nos puede servir en

play13:41

el que accedemos directamente Bueno hay

play13:43

selectores por un tubo el insert por un

play13:47

tubo Y luego por aquí pues tenemos el

play13:49

spray que no se puede utilizar en react

play13:51

y luego modificamos directamente un

play13:54

array que tampoco se puede hacer en reac

play13:57

Vale entonces esto si lo quisieron hacer

play13:59

así copiando y pegando los tendríamos un

play14:01

grave problema vamos a hacerlo con vamos

play14:04

a hacerlo rápidamente

play14:06

luego Aquí

play14:09

voy a hacerlo con Beat

play14:13

app le voy a poner un nombre por ejemplo

play14:16

directo vale aquí le ponemos ion

play14:19

template para que me haga un proyecto de

play14:24

react es súper rápido aquí le ponemos

play14:27

code y el nombre que le he puesto es

play14:30

directo vale

play14:31

directo me abre Aquí súper rápido vale Y

play14:38

luego lo que tengo que hacer es npm y

play14:40

para las dependencias es muy rápido

play14:43

tarda unos 22 segundos

play14:46

a no ser el código

play14:51

Ah vale perdón

play14:55

ahora vale me voy a quitar yo me voy a

play14:58

poner mucho más pequeño

play15:00

Gracias por decírmelo porque si no vale

play15:03

bueno

play15:05

creamos el creado un proyecto con

play15:08

create bit app luego he hecho el epm y

play15:13

para poder acceder vale Aquí tengo el

play15:15

proyecto creado bien este proyecto

play15:17

evidentemente pues

play15:20

esto lo cierro

play15:23

vale esto aquí fuera bien Aquí tengo lo

play15:28

habitual aquí elimino todo

play15:36

Entonces primero en javascript

play15:40

tendríamos lo que sería el array de

play15:41

objetos el array de objetos en

play15:43

javascript no es tan importante es

play15:45

importante pero

play15:46

en realidad es súper importante voy a

play15:50

hacerlo

play15:51

de esta manera aquí cuesta directamente

play15:53

vale aquí tendríamos el array este array

play15:59

vale lo tenemos que dibujar directamente

play16:00

en el mapa entonces lo que tenemos que

play16:04

hacer evidentemente lo que ya utilizáis

play16:06

es como lo queremos modificar tenemos

play16:09

que crear una variable

play16:11

una variable para poder modificarlo yo

play16:14

aquí voy a importar o ya tengo aquí por

play16:16

ejemplo

play16:18

voy a poner Pons muy utilizado con react

play16:22

aquí crearía la variable que se va a

play16:24

llamar por ejemplo colores y luego la

play16:28

función que se va a encargar de

play16:29

modificar la variable colores esto es un

play16:33

State que se va a importar en la parte

play16:37

superior y el valor inicial el valor

play16:41

inicial sería letras

play16:45

bien perfecto maravilloso genial tener

play16:49

en cuenta que cuando utilizáis bit es

play16:52

obligatorio poner el import read cuando

play16:54

utilizamos create app no es necesario

play16:57

bien cuando yo quiero esto modificarlo

play17:00

con javascript lo que hacíamos era desde

play17:03

el código nosotros lo que hacíamos era

play17:07

recorrer con un map y desde una función

play17:11

lo estábamos volcando a una caja

play17:14

volvía esto no lo vamos a hacer sino que

play17:17

lo vamos a crear directamente dentro del

play17:20

reto es decir

play17:22

aquí dentro de voy a borrar voy a crear

play17:26

los fragmentos

play17:28

estos para que podría ser un tipo Pero

play17:32

supongo los fragmentos es mucho más

play17:34

limpio bien

play17:37

entonces

play17:38

a ver si se me ha cerrado esto

play17:41

vale a ver aquí lo que haría sería por

play17:44

una parte en cerrarlo con las llaves

play17:46

porque es código y le diría que tiene

play17:49

que recorrer colores

play17:51

colores punto Mac Por lo cual recorrerá

play17:55

colores y aquí me va a indicar

play17:59

añadirle donde lo tiene que introducir

play18:02

valor quiere decir que valor será

play18:04

primero esto de aquí luego será esto y

play18:06

luego será esto a mí me interesa poner

play18:08

básicamente el nombre vale por lo tanto

play18:10

aquí le digo

play18:13

vale que me cree

play18:17

un dip ya sabéis clase name

play18:22

en vez de class

play18:27

vale esto lo cierro aquí vale Y aquí le

play18:32

tendría que poner en este caso como

play18:34

quiero poner el nombre le pondría valor

play18:39

y el nombre como esto es no quiero que

play18:42

me ponga valores exactamente así lo voy

play18:44

a poner encerrado entre llaves

play18:47

si ahora por ejemplo aquí Bueno voy a

play18:51

poner aquí y el key que si no voy a dar

play18:53

un error el key que tengo que poner

play18:55

siempre cuando utilizo react para que

play18:58

distinga una cosa de la otra le voy a

play19:00

poner que de valor me ponga el ID valor

play19:03

punto ID

play19:05

vale si esto Ahora lo compilo

play19:10

vale con npm Run

play19:16

de me saldrá

play19:18

aquí

play19:21

perfecto

play19:24

está aquí vale viernes sábado domingo

play19:27

está súper ampliado creo vale Pero bueno

play19:29

así se ve mejor viernes sábado y domingo

play19:31

esto lo hemos creado directamente

play19:37

dentro de la de lo que sería el html que

play19:40

sería jsx hemos recorrido colores y

play19:44

hemos añadido el valor de nombre y hemos

play19:47

cogido el id para que sea diferentes el

play19:49

que es obligatorio bien Ahora supongamos

play19:51

que yo quiero eliminar esto cuando yo

play19:55

haga clic en o por ejemplo que cambie de

play19:58

color Que cuando haga clic en viernes

play20:00

clic este se ponga de color rojo clic

play20:03

color rojo clic de color rojo también el

play20:06

estilo con javascript lo que haríamos

play20:09

sería acceder directamente al elemento

play20:11

acceder directamente y modificaríamos el

play20:14

elemento directamente pero con react no

play20:17

lo podemos hacer así con día que lo

play20:20

tenemos que hacer de otra manera he

play20:21

perdido una ventana por aquí

play20:24

perdido me he perdido en algún lugar

play20:29

bueno es igual Vale entonces

play20:32

voy a poner se puede hacer diferente

play20:34

maneras pero aquí voy a poner un Style

play20:37

esto con javascript y con html está

play20:42

súper mal visto pero con ríack lo

play20:45

haríamos de esta manera incluso yo aquí

play20:47

le podría poner uno un clic Con la c

play20:50

mayúscula para que al Acceder al hacer

play20:52

clic fuera una función ahora da error

play20:55

porque no hay ningún tipo de función y

play20:56

ninguna parte bien aquí yo puedo crear

play21:00

una función

play21:02

con const o con función Igualmente

play21:05

llamado por ejemplo colorear

play21:08

esta función normal si yo aquí le pongo

play21:12

colorear

play21:15

va a funcionar perfectamente pero como

play21:18

colorear necesitas saber qué elemento

play21:20

quiero colorear Aquí le tengo que enviar

play21:23

el elemento que quiero modificar

play21:24

entonces si yo lo pongo así me va a dar

play21:27

un problema porque lo va a ejecutar de

play21:29

manera directa sin tener que hacer clic

play21:32

de manera directa por lo tanto para que

play21:34

lo haga únicamente cuando hago clic

play21:37

utilizó la función de flecha y aquí le

play21:39

digo lo que tiene que enviar hasta aquí

play21:41

tiene que enviar el ID el ID que en este

play21:45

caso es valor y de vale Este valor ID

play21:51

viajará desde aquí hasta aquí y aquí lo

play21:55

pondremos donde queramos por ejemplo mi

play21:57

ID bien quiero que se modifique el color

play22:00

pero no lo voy a modificar directamente

play22:01

lo tengo que modificar

play22:03

viniendo aquí a que sea y sustituyendo

play22:07

Green

play22:09

por red por ejemplo este Green y este

play22:13

red de aquí inicialmente debería estar

play22:15

Green de red verde yo lo puedo utilizar

play22:20

dentro del css por ejemplo aquí y voy a

play22:23

importar el app.cs

play22:28

Uy app

play22:32

punto

play22:33

css vale que lo tengo aquí fuera le voy

play22:39

a decir que Green

play22:41

significa pues color gris

play22:45

y red

play22:48

Bueno voy a darle algún tipo de

play22:50

propiedad más como fonts o lo que sea

play22:52

pero ahora para ir al grano vale

play22:56

Serían dos propiedades css Green o de

play23:01

color esto si yo quisiera ponerlo para

play23:04

que se cambiara lo podría poner dentro

play23:06

del Clash pero si lo quiero modificar

play23:09

directamente aquí

play23:12

Aquí

play23:13

voy a poner doble llave Por qué la doble

play23:17

llave La primera llave porque es código

play23:19

y la llave azul es porque esto es un

play23:22

objeto y como es un objeto tiene que ir

play23:24

con las llaves bien Aquí le voy a poner

play23:27

color

play23:30

mira lo voy a hacer de otra manera y

play23:31

aquí voy a escoger este Green de aquí

play23:37

y lo voy a modificar le voy a decir que

play23:39

vaya color que vaya a valor

play23:44

y me dé este caso print mi color

play23:50

mi color

play23:53

si ahora lo pruebo me sale aquí está de

play23:57

color verde pero no es porque tenga

play23:59

ningún css porque lo he hecho así pero

play24:01

al final esto Aunque lo borre daría

play24:04

igual lo borro y sigue saliendo de color

play24:07

verde porque de color verde porque aquí

play24:10

lo pone si aquí pusiera por ejemplo read

play24:12

en uno de ellos

play24:14

y lo probara

play24:16

salía de color rojo vale No no tiene

play24:20

problema pero Grimm Pero si yo quiero

play24:22

modificarlo dinámicamente lo quiero

play24:24

modificar cuando haga clic en este caso

play24:27

lo que tengo que hacer es primero cuando

play24:31

haga clic en un elemento tiene que ir a

play24:33

colorear y enviarle el ID el ID será si

play24:37

hago clic en viernes el ibé será uno si

play24:40

hago clic en sábado y será 2 Y si hago

play24:41

clic en en domingo el ID será 3 bien

play24:46

este uno Este dos y este 3 lo recibe la

play24:51

función colorear y lo añade aquí y para

play24:55

modificarlo no lo puedo modificar

play24:57

directamente en javascript vendría aquí

play25:00

y pondría red y ya está tengo que

play25:02

recorrer en este caso colores por lo

play25:06

tanto dentro de aquí le diría Mira sabes

play25:08

lo que tienes que hacer Tengo que

play25:10

utilizar set colores

play25:12

copio y lo pego

play25:16

perfecto vale Y aquí tiene que ir

play25:19

recorriendo cada uno de los tres objetos

play25:22

vale los objetos se llaman colores por

play25:25

lo tanto tiene que ir a colores

play25:29

o colores vale Y lo tiene que recorrer

play25:34

vale de cada uno de los valores

play25:37

va a añadirlo cogerá cada uno y será

play25:41

valor decir primero valor será todo esto

play25:45

de aquí luego valor será esto y luego

play25:48

valor será esto de aquí

play25:50

y lo que tiene que ver es en cada uno de

play25:53

ellos si este uno coincide con el que le

play25:56

ha enviado si este uno coincide con el

play25:59

que le ha enviado quiere decir que este

play26:01

es el correcto y tendría que venir aquí

play26:03

quitar el Green y poner rit pero si no

play26:07

lo es si no es el uno el que está

play26:08

buscando tiene que devolver Exactamente

play26:10

lo mismo vale por lo tanto aquí le diré

play26:13

mira

play26:16

a ver cómo lo hago para que se vea mejor

play26:19

digo mira

play26:27

porque no estoy haciendo nada dentro del

play26:29

reto le digo Mira si el mide es decir el

play26:33

numerito que éste le ha enviado

play26:36

aquí el ID si este ID que ha sido

play26:39

enviado es igual igual que valor y de

play26:43

decir que este de aquí quiere decir que

play26:46

ese es el que tiene que modificar y si

play26:49

no no yo voy a poner un Else

play26:53

Vale cuando coinciden A ver cuando no

play26:56

coincide más fácil cuando no coinciden

play26:58

tiene que devolver Exactamente lo mismo

play27:01

que ha recibido es decir que si recibes

play27:04

esto de aquí devuelve esto si recibes

play27:06

esto de aquí devuelve Exactamente lo

play27:07

mismo devuelve valor

play27:10

que es este de aquí pero si coincide lo

play27:14

que tengo que hacer es modificarlo

play27:16

entonces para modificarlo

play27:20

primero habría que todo todos los

play27:25

campos para todos los campos todos

play27:27

y modificar solamente uno que

play27:29

modificaría este de aquí modificaría

play27:31

este de aquí aquí tengo que utilizar el

play27:34

escrito Predator Punto a Punto con esto

play27:36

lo único que hago es seleccionar todos

play27:40

los campos del objeto los tres subirá

play27:44

más seleccionaría más y utiliza las

play27:47

llaves porque es un objeto si fuera un

play27:50

array Bueno pues utilizaría

play27:53

corchetes y luego le digo Mira me coges

play27:56

todo el valor bien y luego lo que tienes

play27:59

que hacer es Modificar el campo llamado

play28:04

mi color

play28:07

mi color perdón

play28:11

y aquí le pones otro por ejemplo red

play28:18

me parece me falta algo

play28:21

a ver estamos aquí

play28:23

pondrá perfectamente cuando hago un clic

play28:26

se pone de color rojo vale lo he hecho

play28:29

básicamente modificando esto de aquí

play28:34

he perdido el chat de vista y ahora no

play28:37

sé cómo recuperarlo

play28:44

donde estoy

play28:49

sigo en directo

play28:55

os

play28:57

tras sigo en directo

play29:00

sube un poco más el volumen

play29:04

a ver

play29:07

Kevin buenas crack a ver python o

play29:11

javascript es que depende Si te gusta La

play29:13

Estructura de datos python de cabeza si

play29:15

te gusta más el tema del fronten puedes

play29:17

utilizar javascript yo lo recomiendo

play29:18

javascript

play29:21

tienes forma de subir más el volumen

play29:23

ostras Pues es que lo que puedo hacer es

play29:25

ponerme el micrófono

play29:29

voy a quitar

play29:57

bien Ahora se me escucha súper bien

play30:00

supongo

play30:03

no

play30:10

ahora alto y claro claro que el

play30:13

micrófono no lo puedo colgar no tengo

play30:15

colgado cuando vídeos Sí pero en estos

play30:18

casos no

play30:20

a ver si hago más directos

play30:24

miraré de cómo solucionarlo porque claro

play30:26

Es mi primer directo entonces todo es

play30:28

nuevo

play30:31

Claro Lo que pasa que si pongo si cojo

play30:33

esto lo que no puedo hacer es escribir

play30:34

no pero bueno por eso lo tenían un poco

play30:37

más alejado

play30:41

vale a ver

play30:45

vale Estoy leyendo

play30:49

vale react router doom súper importante

play30:52

tengo un vídeo que lo explico De hecho

play30:54

si los que no conozcáis tengo el curso

play30:57

completo de react y hay un apartado

play31:00

donde explicó todo lo relacionado con

play31:03

ella es súper importante por para poder

play31:06

acceder de un componente a otro para

play31:09

hacer spa o sea es súper importante pero

play31:12

ya lo tengo explicado y de hecho

play31:15

Bueno cuando hagamos otro proyecto un

play31:17

poco más más grande lo volvería a hacer

play31:19

también próximamente bueno Próximamente

play31:22

más adelante introduciré el tema de

play31:24

redux

play31:26

porque me lo habéis pedido mucho y bueno

play31:28

de alguna manera pues pienso que es muy

play31:30

importante también tenerlo en cuenta

play31:31

vale

play31:33

a ver queréis que sigamos con esto

play31:40

Yo escucho bien el principio matadokis

play31:42

pues perfecto tengo la boya rota de lo

play31:44

que he gritado

play31:45

vale Vanessa porfa Qué significa que sí

play31:48

o que no

play31:49

que me calle ya

play31:52

a ver vale esto sería no sé voy a hacer

play31:55

para para poder escribir con una mano a

play31:58

ver esto Esta estructura

play32:02

Es únicamente para modificar a raíz o

play32:04

modificar

play32:05

a raíz de objetos o y es exclusiva de

play32:10

realidad para javascript no hace falta

play32:12

hacer nada de esto simplemente lo

play32:13

ponemos y ya está

play32:15

vale si por ejemplo quisiera eliminar

play32:18

uno

play32:20

aquí por ejemplo no sé cómo lo voy a

play32:22

hacer a ver cómo hago para poner

play32:33

Bueno voy a ver si quisiera por ejemplo

play32:37

eliminar

play32:42

play32:44

para para

play32:46

repasar el tema del tubo es muy

play32:49

importante subir un vídeo que era el

play32:53

Cómo funcionaba

play32:55

[Música]

play32:59

el reviews

play33:02

sí Y es súper importante pero por alguna

play33:07

razón fue un vídeo poco visto

play33:10

y tendré que hacer alguna alguna

play33:12

actualización de esto bien a ver para

play33:15

eliminar imaginaros por ejemplo que

play33:19

tenemos aquí un botón vale un botón

play33:28

vale un botón

play33:31

vale un botón este botón va a servir

play33:34

para eliminar Eliminar

play33:37

falla porque

play33:40

aquí como son más un elemento hay que

play33:43

Añadir las llaves de aquí las llaves

play33:46

también

play33:47

y también debe ser porque me he olvidado

play33:51

Por alguna cosa algún sitio

play34:01

el botón a ver

play34:06

Esto va con esto

play34:08

voy a meter

play34:10

esto lo pongo aquí

play34:15

aquí se ve mejor así

play34:19

y el botón lo pongo

play34:22

este motor será para eliminar vale

play34:25

simplemente saldrá

play34:29

si saldría

play34:32

el botón Vale tengo

play34:36

algún error por algún sitio no sé que no

play34:38

lo puedo ver

play34:42

Dónde está la consola de

play34:48

más el micrófono se me está cayendo

play34:51

madre de Dios a ver aquí no pasa nada no

play34:57

hay error

play35:10

el botón no hace nada porque

play35:12

evidentemente no hace nada porque no lo

play35:13

he puesto simplemente pues se colorea de

play35:16

color rojo pero no se elimina Entonces

play35:18

esto

play35:20

Aquí le voy a poner uno un clic para

play35:23

borrar

play35:30

aquí como también tengo que pasarle

play35:33

tengo que pasarle un parámetro a la

play35:35

función voy a hacer lo mismo que arriba

play35:37

aquí le digo funciones de flecha y aquí

play35:42

la función eliminar por ejemplo y para

play35:46

que eliminar sepa lo que tiene que

play35:48

eliminar voy a enviarle también el ID

play35:51

vale

play35:53

esta idea

play35:57

esta función tiene que existir Vale pues

play36:01

la voy a poner por ejemplo aquí el orden

play36:03

da igual Pons eliminar vale función de

play36:08

flecha

play36:09

lo que le he enviado lo mismo lo va a

play36:13

meter aquí por lo tanto si yo hago clic

play36:15

en este botón

play36:20

de aquí este primero recibirá el 1 si

play36:24

hago clic en el segundo le enviará dos

play36:25

si hago clic en el tercero envía tres

play36:27

enviar al ID del elemento que hago clic

play36:30

y esto se lo envía el propio botón

play36:38

con lo cual aquí recibe el uno el dos o

play36:43

el 3 y lo que tiene que hacer es

play36:44

modificarlo para modificar set colores

play36:48

lo mismo

play36:50

set colores vale Cómo elimino no puedo

play36:54

eliminar no puedo utilizar el spray no

play36:56

puedo utilizar el slide voy a utilizar

play36:58

el filter Entonces le digo primero que

play37:03

vaya a colores vale colores es lo de

play37:05

arriba la raid y haga un filter

play37:09

vale recorrerá cada uno de estos Primero

play37:12

este de aquí luego este de aquí y luego

play37:15

esto de aquí y esto lo tiene que guardar

play37:17

en la música lo guarda por ejemplo

play37:20

en valor valor será cada uno de los

play37:25

objetos bien Ahora qué tiene que hacer

play37:27

pues tiene que ver cuál tiene que

play37:30

modificar Cuál tiene que eliminar no

play37:32

elimina sino que si yo tengo por ejemplo

play37:34

este array de objetos y le digo Ey con

play37:37

un filter seleccióname todos los que el

play37:40

ide no sean el 2 Bueno pues

play37:43

si quiero eliminar el 3 le diré que

play37:46

todos los que no sean el 3 de sea el 3

play37:52

Entonces esto lo voy a poner Aquí le voy

play37:57

a decir mira

play37:59

cuando el valor punto y de decir cuando

play38:04

este de aquí no sea igual

play38:09

a mi ID

play38:13

es decir va a seleccionar una copia y a

play38:17

seleccionar todos los otros

play38:20

si esto Ahora lo voy a probar aquí y

play38:24

eliminó el sábado Ay perdón porque está

play38:27

claro al hacer clic aquí se ejecuta este

play38:31

lo más fácil voy a eliminar el online de

play38:34

arriba voy a separarlo pero para hacerlo

play38:37

rápido

play38:39

porque está la misma caja claro

play38:50

elimino el sábado elimina el sábado

play38:52

elimina el viernes elimino el viernes

play38:54

elimino el domingo elimino el domingo o

play38:57

sea funciona correctamente el que hago

play38:59

clic se elimina cuando hago clic aquí

play39:01

envía el tres

play39:04

y cuando yo

play39:07

hago un filter me devuelve todo menos en

play39:10

tres con lo cual al final se borra y los

play39:12

átomos

play39:19

no el filter igual que el map y igual

play39:23

que el map que el reviews y que no no no

play39:26

crea una copia no modifica el estado con

play39:29

lo cual el filter se utiliza Mucho igual

play39:31

que el Maps Tampoco tampoco hace ningún

play39:34

tipo de lo que haces hacer una copia del

play39:37

estado y devuelve un objeto nuevo o un

play39:40

array nuevo con lo cual

play39:43

es el que se utiliza habitualmente para

play39:44

todo esto

play39:46

pero claro qué ocurre que si esto lo

play39:49

intentamos hacer con javascript nunca lo

play39:50

haríamos Así es que con javascript esto

play39:52

es el de antes es todo directo o sea

play39:57

para para actualizar utilizo el splies y

play40:02

para aquí accedo directamente a un

play40:05

elemento en un índice a un hilo y le

play40:09

cambio el estilo Y ya está decir es muy

play40:13

diferente entonces qué pasa que muchas

play40:15

veces

play40:16

estamos intentando

play40:19

intentando hacerlo como si estuviéramos

play40:21

con javascript y

play40:23

patinamos siempre sobre el mismo punto

play40:26

cuando cambiamos el enfoque Entonces es

play40:30

cuando la cosa empiezan a funcionar pero

play40:31

para cambiar el enfoque tenemos que

play40:33

hacer mucha práctica tenemos que cagarla

play40:35

mucho con el perdón de la palabra

play40:36

tenemos que fallar mucho fallar mucho y

play40:39

luego detectar Dónde está o sea el error

play40:42

es donde está un poco el aprendizaje si

play40:45

no nos equivocamos nunca no nos damos

play40:48

cuenta de Dónde tenemos el problema

play40:51

y es súper importante hacer prácticas

play40:54

solo viendo vídeos no vamos a aprender

play40:56

nada y os lo digo yo que hago vídeos

play40:58

nadie me dedico a la formación la

play41:00

formación online o formación presencial

play41:03

de javascript de Ría etcétera Pero

play41:08

hace falta práctica para todo ello

play41:13

Y sí es una clonación

play41:18

tenéis alguna pregunta alguna duda

play41:22

alguna petición

play41:25

aparte del volumen

play41:31

queréis que otro día

play41:35

a ver esto esto ha sido sobre todo una

play41:38

prueba para ver el tema de los directos

play41:40

Cómo funcionaba o no sé qué a mí me

play41:42

gusta más hacer vídeos porque me los

play41:44

curro más le pongo más postproducción le

play41:46

pongo cartelitos le pongo por aquí pues

play41:48

que salgan los bueno etcétera entonces

play41:52

depende un poquito Cómo funcione el los

play41:56

el directo igual hago más o menos Aunque

play42:00

este vídeo pienso que es tan importante

play42:02

que me parece a mí Según como haya sido

play42:03

Aunque el directo luego se graba es

play42:06

posible que haga un vídeo para

play42:07

explicarlo bien

play42:08

depende un poco de cómo ha ido

play42:12

vale No sé cómo ha ido o como porque no

play42:16

acabo de ver

play42:18

la funcionalidad

play42:21

pero sí Si veo que no ha quedado muy

play42:25

claro pues lo que haré será Borrar el

play42:28

directo como vídeo borrarlo del directo

play42:31

y hacer un vídeo únicamente para esto se

play42:34

ha quedado un poquito mal para que se

play42:35

entienda perfectamente porque pienso que

play42:36

es un contenido que es un tema muy

play42:38

importante a tenerlo en cuenta

play42:41

alguna duda petición

play42:49

nada

play42:51

y bueno me disculpo por él por el

play42:54

volumen

play42:55

si ha sido bajo

play42:57

y el próximo se haga otro otro vídeo si

play43:00

hago otro otro directo pues ya pondría

play43:02

el sonido me haría como hacerlo de

play43:04

manera más bueno

play43:07

que suene más fuerte

play43:10

Estoy leyendo el chat

play43:13

una pequeña guía de cómo subir un

play43:15

proyecto de rían sería otra opción sí

play43:19

Gracias por el Live gracias Antonio

play43:21

Gracias a todos os tocan agradecer que

play43:24

no vaya a dejar solo pensaba que sería

play43:26

un directo conmigo y mi sombra misma y

play43:28

como somos 24 lo cual está bastante bien

play43:32

para mi volumen de YouTube llevo cuatro

play43:35

años en YouTube Hemos llegado a los

play43:38

9.000 suscriptores lo cual

play43:41

hombre voy a estar más O podría ser

play43:43

menos pero os doy las gracias a todos a

play43:45

todos a todos por haberme seguido y a

play43:48

ver haber evitado que haya hecho un

play43:51

directo totalmente solo

play43:53

Hasta luego acabamos aquí

play43:58

a ver cómo se termina la visión

play44:02

este

play44:06

Sí a ver para para nuevamente Me puedes

play44:10

hacer preguntas nuevamente contesto

play44:11

bastantes preguntas

play44:12

Lo que pasa que el chat de YouTube pues

play44:15

no da para mucho realmente

play44:20

pero cualquier cosa que me digáis suelo

play44:22

contestar

play44:23

perfecto acabamos aquí os dejo os dejo

play44:26

Ya de dar la chapa Y nos vemos en el

play44:30

canal en vídeos sucesivos de todo no

play44:32

dudéis en suscribiros a ver si

play44:35

en menos de un año superamos los 10.000

play44:38

y nos vemos en el siguiente vídeo hasta

play44:41

luego

Rate This

5.0 / 5 (0 votes)

相关标签
JavaScriptReactWeb DevelopmentState ManagementDOM ManipulationCoding PracticesFrontendLive StreamTutorialDeveloper Tips
您是否需要英文摘要?