• Урок 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:19
    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:39
    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:23
    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:57
    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:39
    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:07
    Getting the Google API keys
  • Урок 80. 00:08:28
    Setting up places autocomplete
  • Урок 81. 00:12:39
    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:43
    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:17
    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:44
    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:13
    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:14
    Firestore batches part 2
  • Урок 186. 00:04:29
    Cloud functions introduction
  • Урок 187. 00:07:23
    Setting up cloud functions
  • Урок 188. 00:12:09
    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:09
    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:03
    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
  • Урок 224. 00:01:14
    Legacy content
  • Урок 225. 00:08:41
    Introduction
  • Урок 226. 00:01:43
    Exercise Files
  • Урок 227. 00:09:44
    Setting up the project
  • Урок 228. 00:07:38
    Visual Studio Code Extensions
  • Урок 229. 00:03:38
    Course Snippets
  • Урок 230. 00:09:21
    Reviewing the React project contents and startup
  • Урок 231. 00:03:18
    Hot Module Replacement
  • Урок 232. 00:10:12
    Folder Structure
  • Урок 233. 00:05:39
    Versions
  • Урок 234. 00:05:13
    Source control
  • Урок 235. 00:04:52
    Section 1 summary
  • Урок 236. 00:02:36
    Introduction
  • Урок 237. 00:04:06
    Why React?
  • Урок 238. 00:03:27
    React Concepts
  • Урок 239. 00:03:02
    Introduction to JSX
  • Урок 240. 00:01:59
    React Developer tools
  • Урок 241. 00:05:50
    Decisions decisions...
  • Урок 242. 00:02:16
    Introduction
  • Урок 243. 00:06:32
    Breaking up the UI into a component hierarchy
  • Урок 244. 00:10:43
    Semantic UI Introduction
  • Урок 245. 00:06:20
    Building our first component
  • Урок 246. 00:11:33
    Adding the Navigation bar and styling
  • Урок 247. 00:08:56
    Adding the event list items component
  • Урок 248. 00:05:15
    Adding the Event Form
  • Урок 249. 00:10:29
    Passing down static props to components
  • Урок 250. 00:03:54
    Identifying state
  • Урок 251. 00:06:03
    Adding state to our application
  • Урок 252. 00:08:46
    Inverse data flow
  • Урок 253. 00:03:52
    Summary of section 3
  • Урок 254. 00:02:38
    Introduction
  • Урок 255. 00:04:31
    Uncontrolled Forms
  • Урок 256. 00:14:58
    Controlled Forms
  • Урок 257. 00:10:55
    Submitting form data
  • Урок 258. 00:04:14
    Summary of section 4
  • Урок 259. 00:01:03
    Introduction
  • Урок 260. 00:10:21
    Selecting event to open
  • Урок 261. 00:05:44
    React lifecycle method - componentDidMount
  • Урок 262. 00:05:57
    React Lifecycle method - Alternative to componentWillReceiveProps
  • Урок 263. 00:05:28
    Updating the events
  • Урок 264. 00:05:10
    Deleting the events
  • Урок 265. 00:02:22
    Summary of section 5
  • Урок 266. 00:06:59
    Introduction
  • Урок 267. 00:06:54
    Stateless functional components
  • Урок 268. 00:13:19
    Routing configuration
  • Урок 269. 00:06:49
    Adding a home page
  • Урок 270. 00:09:14
    Adding Signed in and Signed out menus to the nav bar
  • Урок 271. 00:03:00
    Using the withRouter Higher Order Component
  • Урок 272. 00:11:55
    Internal navigation for our application
  • Урок 273. 00:03:57
    Summary of section 6
  • Урок 274. 00:05:55
    Introduction
  • Урок 275. 00:05:01
    React Redux
  • Урок 276. 00:02:57
    Creating a test area to practice concepts
  • Урок 277. 00:09:23
    Redux store configuration
  • Урок 278. 00:05:02
    Connecting the store to our application
  • Урок 279. 00:10:36
    Creating our first actions
  • Урок 280. 00:03:08
    Creating a root reducer
  • Урок 281. 00:05:13
    Improving the dev experience
  • Урок 282. 00:08:20
    Reducing boilerplate code
  • Урок 283. 00:04:14
    Summary of section 7
  • Урок 284. 00:01:59
    Introduction
  • Урок 285. 00:03:53
    Creating actions for Events
  • Урок 286. 00:07:04
    Creating the Event reducer
  • Урок 287. 00:02:41
    Connecting the event dashboard to the store
  • Урок 288. 00:06:25
    Connecting the event actions to the event dashboard
  • Урок 289. 00:09:47
    Creating the event detailed page structure
  • Урок 290. 00:05:18
    Adding the Event detailed page header component
  • Урок 291. 00:05:43
    Adding the Event detailed page info, sidebar and chat
  • Урок 292. 00:07:41
    Adding static data for the event detailed page
  • Урок 293. 00:04:53
    Connecting the event detailed page to the store
  • Урок 294. 00:05:54
    Fixing the scroll issue on routing to a new page
  • Урок 295. 00:17:15
    Connecting the event form to the store
  • Урок 296. 00:09:14
    Connecting the event actions to the event form
  • Урок 297. 00:03:04
    Summary of section 8
  • Урок 298. 00:04:51
    Redux Forms introduction
  • Урок 299. 00:08:42
    Redux forms setup
  • Урок 300. 00:06:51
    Creating a reusable Text input field
  • Урок 301. 00:05:13
    Event form changes and cleanup
  • Урок 302. 00:02:54
    Creating a reusable Text area input field
  • Урок 303. 00:07:17
    Creating a reusable Select input field
  • Урок 304. 00:10:33
    Form submission in Redux forms
  • Урок 305. 00:04:14
    Introduction to Revalidate
  • Урок 306. 00:07:35
    Setting up validation for the event form
  • Урок 307. 00:11:52
    Creating a reusable Date input field
  • Урок 308. 00:10:44
    Hooking up the Date input to the event form
  • Урок 309. 00:01:43
    Summary of section 9
  • Урок 310. 00:02:22
    Introduction
  • Урок 311. 00:08:48
    Getting our Google API Keys
  • Урок 312. 00:06:10
    Setting up Places Autocomplete
  • Урок 313. 00:12:34
    Creating a reusable Place Input field
  • Урок 314. 00:16:12
    Narrowing the venue results to the selected city
  • Урок 315. 00:09:07
    Setting up Google Maps + Google Maps Challenge
  • Урок 316. 00:08:07
    Google maps challenge solution
  • Урок 317. 00:13:02
    Adding a Map component to our application
  • Урок 318. 00:01:15
    Summary of section 10
  • Урок 319. 00:02:55
    Introduction
  • Урок 320. 00:07:22
    Setting up our modals in Redux part 1
  • Урок 321. 00:10:35
    Setting up our modals in Redux part 2
  • Урок 322. 00:11:00
    Adding login and register modals
  • Урок 323. 00:06:38
    Creating an auth reducer
  • Урок 324. 00:08:24
    Hooking up the nav bar to the auth
  • Урок 325. 00:01:32
    Summary of section 11
  • Урок 326. 00:02:39
    Introduction
  • Урок 327. 00:10:24
    Redux thunk 101 part 1
  • Урок 328. 00:09:10
    Redux-Thunk 101 part 2
  • Урок 329. 00:06:45
    Isolating button loading indicators
  • Урок 330. 00:03:30
    Creating a mock API
  • Урок 331. 00:07:37
    Fetching events from the mock API
  • Урок 332. 00:08:17
    Adding a Loading Component
  • Урок 333. 00:02:37
    Summary of section 12
  • Урок 334. 00:01:34
    Introduction
  • Урок 335. 00:09:50
    React Redux Toastr
  • Урок 336. 00:11:10
    Date FNS
  • Урок 337. 00:02:07
    Event Activity
  • Урок 338. 00:03:38
    Summary of section 13
  • Урок 339. 00:03:28
    Introduction
  • Урок 340. 00:07:39
    Creating the Firebase project
  • Урок 341. 00:13:03
    Setting up the store for Firestore
  • Урок 342. 00:10:10
    Adding data to Firestore
  • Урок 343. 00:14:02
    Listening to data from Firestore
  • Урок 344. 00:02:58
    Summary of section 14
  • Урок 345. 00:01:43
    Introduction
  • Урок 346. 00:06:56
    Firebase login
  • Урок 347. 00:04:33
    Handling Firebase errors
  • Урок 348. 00:05:45
    Using withFirebase to sign out of the app
  • Урок 349. 00:13:45
    Creating the register method
  • Урок 350. 00:05:12
    Hooking up the register method to our app
  • Урок 351. 00:03:52
    Error handing in the Register form
  • Урок 352. 00:03:23
    Social login component
  • Урок 353. 00:05:32
    Facebook login setup
  • Урок 354. 00:05:46
    Adding Facebook login to our app
  • Урок 355. 00:06:36
    Adding Google login to our app
  • Урок 356. 00:06:55
    Managing the User profile data
  • Урок 357. 00:02:53
    Changing the nav bar display name
  • Урок 358. 00:05:37
    Adding the Account page
  • Урок 359. 00:09:37
    Updating the Password form
  • Урок 360. 00:07:39
    Attaching auth is ready to the app
  • Урок 361. 00:03:25
    Summary of section 15
  • Урок 362. 00:00:48
    Introduction
  • Урок 363. 00:05:00
    Setting up the basic user page form
  • Урок 364. 00:08:45
    Creating a reusable Radio input field
  • Урок 365. 00:04:40
    Adding the update user profile user action
  • Урок 366. 00:08:07
    Hooking the update user method to the form
  • Урок 367. 00:10:47
    Date consistency
  • Урок 368. 00:09:07
    Adding the about me page
  • Урок 369. 00:01:03
    Summary of section 16
  • Урок 370. 00:05:09
    Introduction
  • Урок 371. 00:02:38
    Setting up Firebase Storage
  • Урок 372. 00:02:19
    Adding the Photos page
  • Урок 373. 00:18:05
    React Dropzone
  • Урок 374. 00:10:41
    React Cropper
  • Урок 375. 00:13:53
    Adding the photo upload method
  • Урок 376. 00:05:57
    Adding the method to the photo component
  • Урок 377. 00:08:25
    Using the debugger in VS Code
  • Урок 378. 00:09:08
    Connecting the photos component to Firestore
  • Урок 379. 00:06:23
    Displaying the photos on the page
  • Урок 380. 00:06:07
    Dealing with duplicate photos on the page
  • Урок 381. 00:06:40
    Adding the delete photo method
  • Урок 382. 00:05:32
    Adding the set main photo method
  • Урок 383. 00:06:42
    Improving the User experience
  • Урок 384. 00:03:00
    Summary of section 17
  • Урок 385. 00:03:33
    Introduction to the challenge
  • Урок 386. 00:08:50
    Challenge set up
  • Урок 387. 00:07:25
    Challenge solution
  • Урок 388. 00:01:03
    Introduction
  • Урок 389. 00:10:29
    Firestore Database design
  • Урок 390. 00:13:56
    Create event method
  • Урок 391. 00:05:42
    Hooking up the create event method to the event form
  • Урок 392. 00:08:42
    Getting data from Firestore
  • Урок 393. 00:05:30
    Updating the mapState function
  • Урок 394. 00:12:02
    Converting objects to arrays
  • Урок 395. 00:08:33
    Updating events
  • Урок 396. 00:07:18
    Adding the cancel event toggle
  • Урок 397. 00:12:49
    improving the cancel experience
  • Урок 398. 00:05:36
    React lifecycle method - componentWillUnmount
  • Урок 399. 00:10:04
    Adding conditionals to the buttons in the event detailed header
  • Урок 400. 00:11:03
    Adding the user signup to events
  • Урок 401. 00:07:20
    Adding cancel signup to the events
  • Урок 402. 00:07:46
    Setting the links in the app
  • Урок 403. 00:08:50
    Viewing other users profiles
  • Урок 404. 00:09:32
    App cleanup
  • Урок 405. 00:06:12
    React lazy load
  • Урок 406. 00:08:39
    Adding loading indicators to improve the user experience
  • Урок 407. 00:02:49
    Summary of section 19
  • Урок 408. 00:08:17
    Introduction
  • Урок 409. 00:06:47
    Preparation for paging
  • Урок 410. 00:14:43
    Filtering and Sorting
  • Урок 411. 00:07:46
    Setting up paging
  • Урок 412. 00:08:12
    Adding the paging for the events dashboard
  • Урок 413. 00:05:19
    Improving the paging experience
  • Урок 414. 00:06:48
    Infinite scroll
  • Урок 415. 00:10:03
    Building compound queries
  • Урок 416. 00:07:23
    Firestore composite indexes
  • Урок 417. 00:06:12
    Adding filtered events to the reducer state
  • Урок 418. 00:05:29
    Adding the events to the UI
  • Урок 419. 00:07:55
    Adding tab functionality to change the query
  • Урок 420. 00:03:44
    Summary of section 20
  • Урок 421. 00:02:54
    Introduction
  • Урок 422. 00:07:32
    Connect to Firebase
  • Урок 423. 00:09:09
    Sending a comment to firebase
  • Урок 424. 00:02:56
    Shaping the chat data
  • Урок 425. 00:08:13
    Adding the chat data to the component
  • Урок 426. 00:04:32
    Adding the reply form
  • Урок 427. 00:05:12
    Using dynamic form names in redux forms
  • Урок 428. 00:05:13
    Adding parent ids to comments
  • Урок 429. 00:10:28
    Displaying the chat with replies
  • Урок 430. 00:02:36
    Summary of section 21
  • Урок 431. 00:04:16
    Introduction
  • Урок 432. 00:06:46
    Cloud functions setup
  • Урок 433. 00:08:43
    Creating our first cloud function
  • Урок 434. 00:01:44
    Checking the cloud function logs
  • Урок 435. 00:07:40
    Adding another cloud function
  • Урок 436. 00:07:09
    Reviewing the data in cloud functions
  • Урок 437. 00:06:57
    Adding the event activity feed
  • Урок 438. 00:07:04
    Making the event activity feed stick
  • Урок 439. 00:01:22
    Summary of section 22
  • Урок 440. 00:03:56
    Introduction
  • Урок 441. 00:16:08
    Batch updates for the user photos
  • Урок 442. 00:15:35
    Batch updates for the events
  • Урок 443. 00:08:57
    Firestore transactions
  • Урок 444. 00:02:37
    Summary of section 23
  • Урок 445. 00:04:43
    Introduction
  • Урок 446. 00:14:40
    Implementing Firestore security rules
  • Урок 447. 00:14:10
    Firestore security rules simulator
  • Урок 448. 00:16:23
    Checking our permissions
  • Урок 449. 00:03:17
    Adding an unauth modal
  • Урок 450. 00:06:37
    Adding a redux auth wrapper
  • Урок 451. 00:03:18
    Improving the user experience for anonymous users
  • Урок 452. 00:07:43
    Adding a popup for anonymous users when clicking buttons
  • Урок 453. 00:03:01
    Summary of section 25
  • Урок 454. 00:03:23
    Introduction
  • Урок 455. 00:10:05
    Adding more loading indicators
  • Урок 456. 00:04:54
    Adding a Not Found component
  • Урок 457. 00:07:17
    Dealing with not found events
  • Урок 458. 00:06:34
    Final clean up and finishing touches
  • Урок 459. 00:10:56
    Fixing a bug in the application
  • Урок 460. 00:03:35
    Building the project
  • Урок 461. 00:03:51
    Examining the bundle size
  • Урок 462. 00:07:17
    Service Workers
  • Урок 463. 00:05:42
    Publishing to Firebase
  • Урок 464. 00:05:44
    End of course summary
  • Урок 465. 00:07:01
    Challenge introduction
  • Урок 466. 00:02:15
    Challenge set up
  • Урок 467. 00:06:57
    Challenge hints
  • Урок 468. 00:03:43
    Challenge solution part 1
  • Урок 469. 00:03:44
    Challenge solution part 2
  • Урок 470. 00:03:30
    Challenge solution part 3
  • Урок 471. 00:02:39
    Challenge solution part 4
  • Урок 472. 00:03:40
    Challenge solution part 5
  • Урок 473. 00:12:38
    Course update June 2019 - whats changed and what to do if you mid course
  • Урок 474. 00:03:32
    Introduction to Revents Alpha
  • Урок 475. 00:13:58
    React Hooks used in Revents Alpha
  • Урок 476. 00:08:51
    React Redux Hooks used in Revents Alpha
  • Урок 477. 00:15:02
    React Redux Firebase Alpha, setup, usage and the future of this course
Этот курс находится в платной подписке. Оформи премиум подписку и смотри Build an app with React, Redux and Firestore from scratch, а также все другие курсы, прямо сейчас!
Премиум