Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Build an app with React, Redux and Firestore from scratch, а также все другие курсы, прямо сейчас!
Премиум
  • Урок 1. 00:06:26
    Introduction
  • Урок 2. 00:06:22
    Setting up the project
  • Урок 3. 00:10:59
    Setting up the developer environment
  • Урок 4. 00:09:20
    React project contents
  • Урок 5. 00:03:30
    Hot Module Replacement
  • Урок 6. 00:06:28
    Folder structure
  • Урок 7. 00:06:57
    Source control
  • Урок 8. 00:01:40
    Course assets and source code
  • Урок 9. 00:02:29
    Introduction
  • Урок 10. 00:04:08
    Why React
  • Урок 11. 00:05:10
    React concepts
  • Урок 12. 00:04:16
    Intro to JSX
  • Урок 13. 00:04:17
    React Dev tools
  • Урок 14. 00:06:56
    Decisions made on this course
  • Урок 15. 00:02:18
    Introduction
  • Урок 16. 00:04:10
    Breaking up the UI into components
  • Урок 17. 00:12:01
    Intro to Semantic UI
  • Урок 18. 00:03:52
    Building our first component
  • Урок 19. 00:04:40
    Exports and imports
  • Урок 20. 00:11:25
    Navigation bar and styling
  • Урок 21. 00:07:50
    Event List Items
  • Урок 22. 00:04:09
    Creating an Event Form
  • Урок 23. 00:09:31
    Passing props down to child components
  • Урок 24. 00:11:55
    React component state
  • Урок 25. 00:02:22
    Summary of section 3
  • Урок 26. 00:03:20
    Introduction
  • Урок 27. 00:11:09
    Basic forms in React
  • Урок 28. 00:07:23
    Creating an event
  • Урок 29. 00:07:10
    Selecting an event to read
  • Урок 30. 00:05:59
    Controlled components with a key
  • Урок 31. 00:05:31
    Updating an event
  • Урок 32. 00:02:42
    Deleting an event
  • Урок 33. 00:06:15
    React class components
  • Урок 34. 00:01:41
    Summary of section 4
  • Урок 35. 00:04:21
    Introduction
  • Урок 36. 00:01:54
    Adding some additional components to route to
  • Урок 37. 00:06:14
    Routing configuration
  • Урок 38. 00:04:04
    Using NavLinks and Links
  • Урок 39. 00:07:20
    Home page styling
  • Урок 40. 00:05:25
    Adding menus for authenticated and unauthenticated users
  • Урок 41. 00:03:46
    Adding fake authentication
  • Урок 42. 00:03:29
    Using the useHistory hook
  • Урок 43. 00:05:34
    Event Detailed Page structure
  • Урок 44. 00:07:35
    Event Detailed Page content
  • Урок 45. 00:06:11
    Cleaning up the unused code
  • Урок 46. 00:02:33
    Summary of section 5
  • Урок 47. 00:08:32
    Introduction
  • Урок 48. 00:02:45
    React-Redux
  • Урок 49. 00:06:40
    Setting up Redux
  • Урок 50. 00:03:34
    Adding a sandbox area for experimenting with the code
  • Урок 51. 00:06:08
    Redux Actions
  • Урок 52. 00:03:35
    Action Creators
  • Урок 53. 00:04:36
    Redux Dev Tools
  • Урок 54. 00:08:24
    Creating the event reducer
  • Урок 55. 00:03:32
    RRF 6-9 Creating a root reducer
  • Урок 56. 00:10:32
    Getting events from the redux store
  • Урок 57. 00:08:58
    Dispatching event actions
  • Урок 58. 00:06:38
    Clean up
  • Урок 59. 00:05:50
    Scroll to top
  • Урок 60. 00:03:37
    Summary of section 6
  • Урок 61. 00:02:51
    Introduction
  • Урок 62. 00:10:13
    Setting up Formik
  • Урок 63. 00:05:08
    Formik with less code
  • Урок 64. 00:05:40
    Form validation
  • Урок 65. 00:06:28
    Creating a reusable text input
  • Урок 66. 00:04:41
    Cleaning up the form
  • Урок 67. 00:02:07
    Creating a reusable text area
  • Урок 68. 00:07:40
    Creating a reusable select input
  • Урок 69. 00:10:18
    Creating a reusable date input
  • Урок 70. 00:07:50
    Date-FNS
  • Урок 71. 00:05:06
    Formik props
  • Урок 72. 00:09:42
    Modals
  • Урок 73. 00:09:44
    Adding a Modal Manager
  • Урок 74. 00:08:47
    Creating the sign up form
  • Урок 75. 00:05:14
    Adding an auth reducer
  • Урок 76. 00:08:11
    Hooking up the sign up form
  • Урок 77. 00:02:08
    Summary of section 7
  • Урок 78. 00:07:15
    Introduction
  • Урок 79. 00:07:08
    Getting the Google API keys
  • Урок 80. 00:08:28
    Setting up places autocomplete
  • Урок 81. 00:12:40
    Creating a custom place input
  • Урок 82. 00:09:37
    Using the place input
  • Урок 83. 00:05:57
    Narrowing the place input search results
  • Урок 84. 00:06:04
    Google maps react
  • Урок 85. 00:05:17
    Challenge solution
  • Урок 86. 00:07:17
    Adding the map to the Event Detailed Page
  • Урок 87. 00:02:20
    Summary of section 8
  • Урок 88. 00:04:45
    Introduction
  • Урок 89. 00:06:37
    Redux Thunk 101
  • Урок 90. 00:07:48
    Redux Thunk 102
  • Урок 91. 00:03:21
    Isolating the loading indicators
  • Урок 92. 00:04:52
    Adding toast notifications
  • Урок 93. 00:07:10
    Adding a mock API
  • Урок 94. 00:03:17
    Adding a loading component
  • Урок 95. 00:04:00
    Using placeholders to improve the UI
  • Урок 96. 00:06:04
    Adding an event filters component
  • Урок 97. 00:03:58
    Summary of section 9
  • Урок 98. 00:06:50
    Introduction
  • Урок 99. 00:06:29
    Setting up Firestore
  • Урок 100. 00:11:56
    Firestore document fields
  • Урок 101. 00:06:57
    Listening to Firestore data
  • Урок 102. 00:09:30
    Shaping the Firestore data
  • Урок 103. 00:03:32
    Restoring the loading indicator
  • Урок 104. 00:09:04
    Creating a custom hook
  • Урок 105. 00:11:01
    Adding a useFirestoreDoc hook
  • Урок 106. 00:05:50
    Handling not found documents
  • Урок 107. 00:05:02
    Adding an error component
  • Урок 108. 00:10:36
    Creating and updating events in Firestore
  • Урок 109. 00:05:27
    Creating and updating events in Firestore part 2
  • Урок 110. 00:03:46
    Deleting an event
  • Урок 111. 00:05:44
    Cancelling an event function
  • Урок 112. 00:06:42
    Adding a confirmation prompt
  • Урок 113. 00:03:28
    Summary of section 10
  • Урок 114. 00:02:13
    Introduction
  • Урок 115. 00:06:52
    Logging in
  • Урок 116. 00:09:19
    Persisting the login
  • Урок 117. 00:04:01
    Signing out the user
  • Урок 118. 00:07:02
    Registering new users
  • Урок 119. 00:06:21
    Handling auth errors
  • Урок 120. 00:05:02
    Setting user profile data
  • Урок 121. 00:03:47
    Creating a social login component
  • Урок 122. 00:06:18
    Facebook login
  • Урок 123. 00:11:20
    Adding the facebook login method
  • Урок 124. 00:01:58
    Adding Google login
  • Урок 125. 00:09:11
    Adding an account page
  • Урок 126. 00:07:52
    Adding additional user info into the auth reducer
  • Урок 127. 00:06:27
    Adding a password change function
  • Урок 128. 00:08:13
    App initialization
  • Урок 129. 00:03:20
    Summary of section 11
  • Урок 130. 00:01:08
    Introduction
  • Урок 131. 00:07:48
    Adding a profile page
  • Урок 132. 00:03:12
    Adding the profile content
  • Урок 133. 00:03:44
    Creating the redux actions
  • Урок 134. 00:07:45
    Connecting the profile page to the store
  • Урок 135. 00:06:04
    Adding an about page
  • Урок 136. 00:06:20
    Adding the profile form
  • Урок 137. 00:05:53
    Adding the update user actions
  • Урок 138. 00:05:45
    Initializing the app with the current user profile
  • Урок 139. 00:05:32
    Selecting other user profiles
  • Урок 140. 00:01:35
    Summary of section 12
  • Урок 141. 00:02:45
    Introduction
  • Урок 142. 00:04:28
    Adding a profile photos page
  • Урок 143. 00:03:53
    Adding a photo upload widget
  • Урок 144. 00:09:20
    React dropzone
  • Урок 145. 00:12:14
    React cropper
  • Урок 146. 00:07:17
    Adding an upload image method
  • Урок 147. 00:13:00
    Using the upload method in the widget
  • Урок 148. 00:06:01
    Displaying the images
  • Урок 149. 00:06:02
    Setting the main photo
  • Урок 150. 00:08:48
    Deleting a photo
  • Урок 151. 00:03:05
    Summary of section 13
  • Урок 152. 00:01:54
    Introduction
  • Урок 153. 00:11:09
    Firestore Database design
  • Урок 154. 00:05:30
    Adding attendances to an event
  • Урок 155. 00:08:57
    Setting up the event detailed header
  • Урок 156. 00:03:43
    Adding the join event handler
  • Урок 157. 00:05:21
    Cancelling a user attendance
  • Урок 158. 00:05:06
    Adding the user nav links
  • Урок 159. 00:08:17
    Adding the filter functionality
  • Урок 160. 00:10:41
    Getting the filtered data
  • Урок 161. 00:07:00
    Adding the user event filters
  • Урок 162. 00:03:41
    Adding the user event query
  • Урок 163. 00:11:40
    Adding profile actions for user events
  • Урок 164. 00:03:08
    Summary of section 14
  • Урок 165. 00:01:35
    Introduction
  • Урок 166. 00:03:49
    Setting up firebase
  • Урок 167. 00:06:57
    Setting up the chat form
  • Урок 168. 00:12:21
    Listening to the chat data
  • Урок 169. 00:05:01
    Displaying the comments
  • Урок 170. 00:07:44
    Improving the chat UI
  • Урок 171. 00:04:48
    Clearing the chat comments
  • Урок 172. 00:09:08
    Adding the reply functionality
  • Урок 173. 00:10:18
    Displaying the replies
  • Урок 174. 00:01:53
    Summary of section 15
  • Урок 175. 00:01:52
    Introduction
  • Урок 176. 00:08:13
    Adding the firestore functions
  • Урок 177. 00:04:08
    Unfollow a user
  • Урок 178. 00:03:18
    Listening to the following data
  • Урок 179. 00:04:22
    Adding the following components
  • Урок 180. 00:09:19
    Listening to the followers data
  • Урок 181. 00:07:34
    Updating the following count
  • Урок 182. 00:07:33
    Updating the following user status
  • Урок 183. 00:03:38
    Clearing the followings
  • Урок 184. 00:09:23
    Firestore batches
  • Урок 185. 00:08:15
    Firestore batches part 2
  • Урок 186. 00:04:29
    Cloud functions introduction
  • Урок 187. 00:07:23
    Setting up cloud functions
  • Урок 188. 00:12:10
    Creating our own cloud functions
  • Урок 189. 00:05:38
    Firebase functions logs
  • Урок 190. 00:06:02
    Creating a personalized news feed
  • Урок 191. 00:11:57
    Adding functions for the feed
  • Урок 192. 00:09:17
    Listening to the news feed
  • Урок 193. 00:09:51
    Displaying the news feed events
  • Урок 194. 00:03:40
    Summary of section 16
  • Урок 195. 00:10:39
    Introduction
  • Урок 196. 00:12:39
    Implementing pagination
  • Урок 197. 00:04:10
    Improving the paging UI
  • Урок 198. 00:04:58
    Infinite scroll
  • Урок 199. 00:07:20
    Fixing the event detailed page
  • Урок 200. 00:06:10
    Fixing the event filters
  • Урок 201. 00:03:35
    Dealing with duplicate data
  • Урок 202. 00:11:05
    Implementing data consistency
  • Урок 203. 00:04:46
    Updating security rules
  • Урок 204. 00:01:38
    Summary of section 17
  • Урок 205. 00:02:13
    Introduction
  • Урок 206. 00:05:26
    Checking anonymous access
  • Урок 207. 00:05:54
    Creating a modal to prompt login
  • Урок 208. 00:04:51
    Creating a private route
  • Урок 209. 00:08:07
    Connecting the router to the store
  • Урок 210. 00:03:23
    Redirecting the user with connected router
  • Урок 211. 00:07:04
    Showing the modal on click
  • Урок 212. 00:09:13
    More on Firestore security rules
  • Урок 213. 00:15:08
    Restricting API Key usage
  • Урок 214. 00:01:46
    Summary of section 18
  • Урок 215. 00:02:34
    Introduction
  • Урок 216. 00:09:27
    Optimizing the events
  • Урок 217. 00:08:04
    Optimizing the events part 2
  • Урок 218. 00:04:56
    Optimizing the profiles
  • Урок 219. 00:04:48
    Building the application
  • Урок 220. 00:03:20
    Service worker
  • Урок 221. 00:06:49
    Publishing our app to Firebase
  • Урок 222. 00:12:02
    Resolving issues with the app and redeploying
  • Урок 223. 00:02:39
    End of course summary