Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Build an Online Store with React and GraphQL in 90 Minutes, а также все другие курсы, прямо сейчас!
Премиум
  1. Урок 1. 00:04:37
    Tools Used / Needed for Our App
  2. Урок 2. 00:01:23
    Short Path versus the Long(er) Path in the Course
  3. Урок 3. 00:03:19
    Git Clone Repo, Install Dependencies, Scaffold React App
  4. Урок 4. 00:03:19
    Create Components, Routing for Project
  5. Урок 5. 00:01:12
    Hot Module Loading with create-react-app (Optional)
  6. Урок 6. 00:06:31
    Gestalt Setup and Navbar Component
  7. Урок 7. 00:01:55
    Add Base CSS Rules and Apply Class to Active NavLink (Optional)
  8. Урок 8. 00:05:56
    (Updated) Setup MongoDB Atlas Database, Install Strapi CLI, Create Strapi Server
  9. Урок 9. 00:02:27
    Brief Look at Strapi CLI (Optional)
  10. Урок 10. 00:02:16
    Start the Strapi Server, Create Root Admin for CMS
  11. Урок 11. 00:05:31
    Overview of Strapi Admin Panel (Optional)
  12. Урок 12. 00:04:51
    Add Brand Content Type with Content Type Builder, Add First Brand
  13. Урок 13. 00:01:18
    Install GraphQL Plugin, Visit GraphQL Playground
  14. Урок 14. 00:05:16
    Query Brand by Id in GraphQL Playground, Give Permission to All Users (Optional)
  15. Урок 15. 00:02:59
    Query Multiple Brands with GraphQL, Change Permissions Again
  16. Урок 16. 00:02:22
    Run Client Script with Server, Add Markup for Brands Section
  17. Урок 17. 00:04:15
    Connecting React with GraphQL using Strapi SDK, Fetch Data from Client
  18. Урок 18. 00:02:37
    Catch async / await Errors with try / catch, Put Brand Data in Local State
  19. Урок 19. 00:05:35
    Display Brands on Home Page, Create Brand Card Component
  20. Урок 20. 00:01:45
    Add Flex Wrap to Brand Cards for Responsive Design, More Styles (Optional)
  21. Урок 21. 00:05:08
    Add SearchField Component to Search Brands (Optional)
  22. Урок 22. 00:03:48
    Client-Side Search with .filter() (Optional)
  23. Урок 23. 00:05:39
    Add Loading State for Brand Data, Create Loader Component (Optional)
  24. Урок 24. 00:02:23
    Add Brew Content Type
  25. Урок 25. 00:04:21
    Seed Brew Data
  26. Урок 26. 00:03:17
    Query Brew / Brews, Change Permission for Public / Auth Users
  27. Урок 27. 00:02:29
    Query Brand by Id to Get Associated Brews
  28. Урок 28. 00:05:40
    Request Brews by Brand Id in Brews Component
  29. Урок 29. 00:06:02
    Add Markup to Display Brews
  30. Урок 30. 00:04:40
    Add Cart Markup in Brews Component
  31. Урок 31. 00:05:04
    Create Function to Add Items to Cart
  32. Урок 32. 00:03:59
    Create Function to Delete Item from Cart, Calculate Cart Total
  33. Урок 33. 00:03:19
    Persist Cart to LocalStorage
  34. Урок 34. 00:05:13
    Create Sign Up Form
  35. Урок 35. 00:02:23
    Add Form Validation to Sign Up (Optional)
  36. Урок 36. 00:05:08
    Create Toast Message Component to Show Upon Validation Error (Optional)
  37. Урок 37. 00:06:24
    Register User, Store JWT in LocalStorage
  38. Урок 38. 00:03:54
    Change Navbar Upon Sign Up
  39. Урок 39. 00:03:52
    Sign Out User
  40. Урок 40. 00:01:56
    Create Sign In Markup / Functionality
  41. Урок 41. 00:02:36
    Make Checkout a Private Route (Optional)
  42. Урок 42. 00:05:35
    Add Markup for Checkout Form
  43. Урок 43. 00:05:52
    Add Cart to Checkout, Show Default Text if Cart Empty
  44. Урок 44. 00:07:01
    Add Confirmation Modal to Order on Submit
  45. Урок 45. 00:01:08
    Sign Up for Stripe and Get API Keys
  46. Урок 46. 00:04:11
    Add Stripe to Checkout Page
  47. Урок 47. 00:06:00
    Create Orders Content Type, Add Create Function in Controllers
  48. Урок 48. 00:08:26
    Submit Order to Database, Send / Process Payment with Stripe
  49. Урок 49. 00:03:18
    Set up SendGrid, Give API Key to Strapi (Optional)
  50. Урок 50. 00:09:01
    Send Confirmation Email upon Checkout (Optional)
  51. Урок 51. 00:07:47
    Search with GraphQL and where / field_contains (Optional)
  52. Урок 52. 00:07:18
    Make App Fully Mobile-Compatible (Optional)