Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Vue - The Complete Guide (incl. Router & Composition API), а также все другие курсы, прямо сейчас!
Премиум
  • Урок 1. 00:01:40
    Welcome to the Course!
  • Урок 2. 00:07:52
    What is "Vue.js"?
  • Урок 3. 00:02:36
    Different Ways of Using Vue
  • Урок 4. 00:03:12
    Exploring Vue Alternatives
  • Урок 5. 00:07:27
    Building A First App With Just JavaScript
  • Урок 6. 00:11:40
    Re-building the App with Vue
  • Урок 7. 00:01:11
    Vue vs "Vanilla JavaScript" (just JavaScript)
  • Урок 8. 00:02:05
    Setting Up the Course Development Environment
  • Урок 9. 00:02:59
    Course Outline & What's In The Course
  • Урок 10. 00:03:24
    How To Get The Most Out Of This Course
  • Урок 11. 00:00:49
    Module Introduction
  • Урок 12. 00:08:41
    Creating and Connecting Vue App Instances
  • Урок 13. 00:03:36
    Interpolation and Data Binding
  • Урок 14. 00:05:38
    Binding Attributes with the "v-bind" Directive
  • Урок 15. 00:05:48
    Understanding "methods" in Vue Apps
  • Урок 16. 00:03:24
    Working with Data inside of a Vue App
  • Урок 17. 00:03:32
    Outputting Raw HTML Content with v-html
  • Урок 18. 00:04:13
    A First Summary
  • Урок 19. 00:07:18
    Understanding Event Binding
  • Урок 20. 00:06:13
    Events & Methods
  • Урок 21. 00:03:00
    Working with Event Arguments
  • Урок 22. 00:09:00
    Using the Native Event Object
  • Урок 23. 00:09:55
    Exploring Event Modifiers
  • Урок 24. 00:02:09
    Locking Content with v-once
  • Урок 25. 00:06:33
    Data Binding + Event Binding = Two-Way Binding
  • Урок 26. 00:06:47
    Methods used for Data Binding: How It Works
  • Урок 27. 00:05:59
    Introducing Computed Properties
  • Урок 28. 00:10:50
    Working with Watchers
  • Урок 29. 00:02:28
    Methods vs Computed Properties vs Watchers
  • Урок 30. 00:01:54
    v-bind and v-on Shorthands
  • Урок 31. 00:07:20
    Dynamic Styling with Inline Styles
  • Урок 32. 00:06:32
    Adding CSS Classes Dynamically
  • Урок 33. 00:01:58
    Classes & Computed Properties
  • Урок 34. 00:01:23
    Dynamic Classes: Array Syntax
  • Урок 35. 00:04:28
    Module Summary
  • Урок 36. 00:01:36
    Module Introduction
  • Урок 37. 00:03:17
    Understanding the Problem
  • Урок 38. 00:05:10
    Rendering Content Conditionally
  • Урок 39. 00:04:19
    v-if, v-else and v-else-if
  • Урок 40. 00:02:26
    Using v-show Instead Of v-if
  • Урок 41. 00:06:21
    Rendering Lists of Data
  • Урок 42. 00:05:13
    Diving Deeper Into v-for
  • Урок 43. 00:04:00
    Removing List Items
  • Урок 44. 00:08:27
    Lists & Keys
  • Урок 45. 00:02:16
    Module Summary
  • Урок 46. 00:01:19
    Module Introduction
  • Урок 47. 00:12:28
    Project Setup & First Methods
  • Урок 48. 00:07:08
    Updating the Health Bars
  • Урок 49. 00:06:24
    Adding a "Special Attack"
  • Урок 50. 00:04:48
    Adding a "Heal" Functionality
  • Урок 51. 00:09:39
    Adding a "Game Over" Screen
  • Урок 52. 00:06:09
    Finishing the Core Functionality
  • Урок 53. 00:14:12
    Adding a Battle Log
  • Урок 54. 00:01:32
    Module Introduction
  • Урок 55. 00:04:27
    An Introduction to Vue's Reactivity
  • Урок 56. 00:08:11
    Vue Reactivity: A Deep Dive
  • Урок 57. 00:03:54
    One App vs Multiple Apps
  • Урок 58. 00:03:57
    Understanding Templates
  • Урок 59. 00:05:23
    Working with Refs
  • Урок 60. 00:06:27
    How Vue Updates the DOM
  • Урок 61. 00:04:47
    Vue App Lifecycle - Theory
  • Урок 62. 00:09:49
    Vue App Lifecycle - Practice
  • Урок 63. 00:01:31
    Module Introduction
  • Урок 64. 00:08:40
    Understanding the Problem
  • Урок 65. 00:10:55
    Introducing Components
  • Урок 66. 00:01:01
    The Why: Building Complex User Interfaces With Components
  • Урок 67. 00:01:36
    Module Introduction
  • Урок 68. 00:03:30
    Why We Need A Development Server
  • Урок 69. 00:05:51
    Why We Want A Better Developer Experience
  • Урок 70. 00:08:28
    Installing & Using the Vue CLI
  • Урок 71. 00:06:00
    Inspecting the Created Project
  • Урок 72. 00:06:05
    Inspecting the Vue Code & ".vue" Files
  • Урок 73. 00:01:16
    Adding the "Vetur" Extension to VS Code
  • Урок 74. 00:01:41
    More on ".vue" Files
  • Урок 75. 00:05:06
    A New Vue Project
  • Урок 76. 00:09:33
    Creating a Basic Vue App
  • Урок 77. 00:08:15
    Adding a Component
  • Урок 78. 00:02:17
    Adding Styling
  • Урок 79. 00:01:42
    Module Introduction
  • Урок 80. 00:10:04
    Introducing "Props" (Parent => Child Communication)
  • Урок 81. 00:06:31
    Prop Behavior & Changing Props
  • Урок 82. 00:07:15
    Validating Props
  • Урок 83. 00:05:38
    Working with Dynamic Prop Values
  • Урок 84. 00:11:16
    Emitting Custom Events (Child => Parent Communication)
  • Урок 85. 00:04:06
    Defining & Validating Custom Events
  • Урок 86. 00:13:16
    Demo: Adding Components & Connecting Them
  • Урок 87. 00:06:25
    Demo: Adding More Component Communication
  • Урок 88. 00:06:27
    A Potential Problem
  • Урок 89. 00:08:17
    Provide + Inject To The Rescue
  • Урок 90. 00:04:00
    Provide + Inject for Functions / Methods
  • Урок 91. 00:02:07
    Provide + Inject vs Props & Custom Events
  • Урок 92. 00:04:45
    Module Summary
  • Урок 93. 00:01:39
    Module Introduction
  • Урок 94. 00:02:39
    Project Setup
  • Урок 95. 00:09:23
    Global vs Local Components
  • Урок 96. 00:05:16
    Scoped Styles
  • Урок 97. 00:06:25
    Introducing Slots
  • Урок 98. 00:05:36
    Named Slots
  • Урок 99. 00:02:27
    Slot Styles & Compilation
  • Урок 100. 00:07:20
    More on Slots
  • Урок 101. 00:09:35
    Scoped Slots
  • Урок 102. 00:07:08
    Dynamic Components
  • Урок 103. 00:02:45
    Keeping Dynamic Components Alive
  • Урок 104. 00:09:25
    Applying What We Know & A Problem
  • Урок 105. 00:03:51
    Teleporting Elements
  • Урок 106. 00:01:24
    Working with Fragments
  • Урок 107. 00:03:03
    The Vue Style Guide
  • Урок 108. 00:02:57
    Moving to a Different Folder Structure
  • Урок 109. 00:03:39
    Module Summary
  • Урок 110. 00:01:38
    Module Introduction
  • Урок 111. 00:05:25
    Setup & First Steps
  • Урок 112. 00:10:47
    First Components & Props
  • Урок 113. 00:07:20
    Styling and More Components
  • Урок 114. 00:07:01
    Header & BaseCard Components
  • Урок 115. 00:05:20
    Adding a Base Button
  • Урок 116. 00:08:39
    Dynamic Components & Attribute Fallthrough
  • Урок 117. 00:04:59
    Adding & Styling Tabs
  • Урок 118. 00:04:13
    Adding a Form
  • Урок 119. 00:08:28
    Fetching User Input
  • Урок 120. 00:12:20
    Adding a Modal Dialog
  • Урок 121. 00:06:43
    Deleting Items
  • Урок 122. 00:01:30
    Adding "Teleport"
  • Урок 123. 00:00:34
    Module Introduction
  • Урок 124. 00:06:04
    v-model & Inputs
  • Урок 125. 00:06:55
    Working with v-model Modifiers and Numbers
  • Урок 126. 00:02:27
    v-model and Dropdowns
  • Урок 127. 00:07:14
    Using v-model with Checkboxes & Radiobuttons
  • Урок 128. 00:05:14
    Adding Basic Form Validation
  • Урок 129. 00:06:28
    Building a Custom Control Component
  • Урок 130. 00:06:49
    Using v-model on Custom Components
  • Урок 131. 00:01:15
    Module Summary
  • Урок 132. 00:01:10
    Module Introduction
  • Урок 133. 00:05:05
    Starting App & Why we need a Backend
  • Урок 134. 00:03:22
    Adding a Backend
  • Урок 135. 00:05:25
    How To (Not) Send Http Requests
  • Урок 136. 00:05:46
    Sending a POST Request to Store Data
  • Урок 137. 00:09:52
    Getting Data (GET Request) & Transforming Response Data
  • Урок 138. 00:02:01
    Loading Data When a Component Mounts
  • Урок 139. 00:02:56
    Showing a "Loading..." Message
  • Урок 140. 00:03:01
    Handling the "No Data" State
  • Урок 141. 00:06:43
    Handling Technical / Browser-side Errors
  • Урок 142. 00:06:50
    Handling Error Responses
  • Урок 143. 00:01:33
    Module Summary
  • Урок 144. 00:00:42
    Module Introduction
  • Урок 145. 00:04:40
    What & Why?
  • Урок 146. 00:04:37
    Routing Setup
  • Урок 147. 00:06:26
    Registering & Rendering Routes
  • Урок 148. 00:04:56
    Navigating with router-link
  • Урок 149. 00:03:06
    Styling Active Links
  • Урок 150. 00:04:02
    Programmatic Navigation
  • Урок 151. 00:10:47
    Passing Data with Route Params (Dynamic Segments)
  • Урок 152. 00:03:01
    Navigation & Dynamic Paths
  • Урок 153. 00:05:32
    Updating Params Data with Watchers
  • Урок 154. 00:03:38
    Passing Params as Props
  • Урок 155. 00:07:51
    Redirecting & "Catch All" Routes
  • Урок 156. 00:05:35
    Using Nested Routes
  • Урок 157. 00:05:22
    More Fun with Named Routes & Location Objects
  • Урок 158. 00:04:00
    Using Query Params
  • Урок 159. 00:05:52
    Rendering Multiple Routes with Named Router Views
  • Урок 160. 00:06:18
    Controlling Scroll Behavior
  • Урок 161. 00:07:32
    Introducing Navigation Guards
  • Урок 162. 00:06:51
    Diving Deeper Into Navigation Guards
  • Урок 163. 00:01:28
    The Global "afterEach" Guard
  • Урок 164. 00:07:14
    Beyond Entering: Route Leave Guards
  • Урок 165. 00:02:15
    Utilizing Route Metadata
  • Урок 166. 00:04:50
    Organizing Route Files
  • Урок 167. 00:02:13
    Summary
  • Урок 168. 00:01:12
    Module Introduction
  • Урок 169. 00:07:29
    Animation Basics & CSS Transitions
  • Урок 170. 00:04:21
    Understanding CSS Animations
  • Урок 171. 00:04:28
    Why Is "Just CSS" Not Enough?
  • Урок 172. 00:04:47
    Playing CSS Animations with Vue's Help
  • Урок 173. 00:05:03
    Using the Transition Component
  • Урок 174. 00:02:29
    CSS Animations with the Transition Component
  • Урок 175. 00:03:35
    Using Custom CSS Class Names
  • Урок 176. 00:08:39
    Example: Animating a Modal
  • Урок 177. 00:09:16
    Transitioning Between Multiple Elements
  • Урок 178. 00:08:32
    Using Transition Events
  • Урок 179. 00:14:58
    Building JavaScript Transitions (instead of CSS)
  • Урок 180. 00:03:06
    Disabling CSS Transitions
  • Урок 181. 00:06:45
    Getting Started with Animated Lists
  • Урок 182. 00:05:27
    Animating Lists with "transition-group"
  • Урок 183. 00:03:54
    Animate List Item Movement
  • Урок 184. 00:12:16
    Animating Route Changes
  • Урок 185. 00:01:00
    Module Introduction
  • Урок 186. 00:07:12
    What & Why?
  • Урок 187. 00:04:44
    Creating & Using a Store
  • Урок 188. 00:02:37
    Connecting Components to State
  • Урок 189. 00:06:31
    Introducing Mutations - A Better Way of Changing Data
  • Урок 190. 00:04:08
    Passing Data to Mutations with Payloads
  • Урок 191. 00:07:42
    Introducing Getters - A Better Way Of Getting Data
  • Урок 192. 00:07:34
    Running Async Code with Actions
  • Урок 193. 00:02:03
    Understanding the Action "Context"
  • Урок 194. 00:05:58
    Using Mapper Helpers
  • Урок 195. 00:08:10
    Example: Adding More State
  • Урок 196. 00:04:11
    Organizing your Store with Modules
  • Урок 197. 00:04:28
    Understanding Local Module State
  • Урок 198. 00:05:04
    Namespacing Modules
  • Урок 199. 00:08:45
    Structuring Vuex Code & Files
  • Урок 200. 00:01:52
    A Challenge!
  • Урок 201. 00:12:01
    Challenge Solution (1/3)
  • Урок 202. 00:11:28
    Challenge Solution (2/3)
  • Урок 203. 00:03:19
    Challenge Solution (3/3)
  • Урок 204. 00:01:20
    Summary
  • Урок 205. 00:02:36
    Module Introduction
  • Урок 206. 00:04:27
    Planning the Project / Web App
  • Урок 207. 00:05:12
    Planning the Data Requirements
  • Урок 208. 00:05:07
    Planning the Layout / Components
  • Урок 209. 00:05:59
    Registering Routes
  • Урок 210. 00:05:28
    Adding Route Page Components
  • Урок 211. 00:07:43
    Working on the Main Layout & Styling
  • Урок 212. 00:05:23
    Wiring Up Pages
  • Урок 213. 00:12:16
    Adding Vuex and Coach Data
  • Урок 214. 00:11:22
    Working on the Coaches List and List Items
  • Урок 215. 00:12:55
    Adding a Couple of Base Components (Base Card, Base Button, Base Badge)
  • Урок 216. 00:08:25
    Building the Coach Detail Component
  • Урок 217. 00:11:11
    Filtering Coaches
  • Урок 218. 00:10:14
    Registering as a Coach: The Form
  • Урок 219. 00:13:38
    Adding Coaches to Vuex
  • Урок 220. 00:12:36
    Adding Form Validation
  • Урок 221. 00:08:10
    Working on the Contact Form
  • Урок 222. 00:08:32
    Storing Requests (Messages) With Vuex
  • Урок 223. 00:10:02
    Outputting Incoming Requests (Messages)
  • Урок 224. 00:04:46
    Filtering Requests for the Active Coach
  • Урок 225. 00:11:06
    Sending a PUT Http Request to Store Coach Data
  • Урок 226. 00:07:52
    Fetching Coach Data (GET Http Request)
  • Урок 227. 00:06:39
    Rendering a Loading Spinner
  • Урок 228. 00:09:19
    Adding Http Error Handling
  • Урок 229. 00:15:49
    Sending Coaching Requests Http Requests
  • Урок 230. 00:08:30
    Caching Http Response Data
  • Урок 231. 00:10:21
    Adding Route Transitions
  • Урок 232. 00:02:20
    The "Not Found" Page & Summary
  • Урок 233. 00:01:01
    Module Introduction
  • Урок 234. 00:06:10
    How Authentication Works in Vue Apps (or any SPA)
  • Урок 235. 00:05:57
    Locking / Protecting Backend Resources
  • Урок 236. 00:09:55
    Adding an Authentication Page (Login & Signup)
  • Урок 237. 00:04:23
    Preparing Vuex
  • Урок 238. 00:09:06
    Adding a "Signup" Action & Flow
  • Урок 239. 00:05:32
    Better UX: Loading Spinner & Error Handling
  • Урок 240. 00:03:16
    Adding a "Login" Action & Flow
  • Урок 241. 00:04:21
    Attaching the Token to Outgoing Requests
  • Урок 242. 00:04:05
    Updating the UI Based on Auth State
  • Урок 243. 00:03:35
    Adding a "Logout" Action & Flow
  • Урок 244. 00:11:42
    Authentication & Routing (incl. Navigation Guards)
  • Урок 245. 00:08:53
    Adding "Auto Login"
  • Урок 246. 00:13:35
    Adding "Auto Logout"
  • Урок 247. 00:01:20
    Summary
  • Урок 248. 00:01:11
    Module Introduction
  • Урок 249. 00:02:51
    What To Deploy?
  • Урок 250. 00:12:17
    Optimization: Using Asynchronous Components
  • Урок 251. 00:03:55
    Building the Project For Production
  • Урок 252. 00:08:56
    Deploying a Vue App
  • Урок 253. 00:02:01
    Module Introduction
  • Урок 254. 00:06:52
    Which Problem Does The Composition API Solve?
  • Урок 255. 00:11:31
    Replacing "data" with "refs"
  • Урок 256. 00:10:58
    Building "reactive" Objects
  • Урок 257. 00:08:24
    Reactivity: A Deep Dive
  • Урок 258. 00:07:03
    Replacing "methods" with Regular Functions
  • Урок 259. 00:07:53
    Replacing "Computed Properties" with the "computed" Function
  • Урок 260. 00:02:59
    Two-Way-Binding and the Composition API
  • Урок 261. 00:05:43
    Working with Watchers
  • Урок 262. 00:01:38
    A First Summary
  • Урок 263. 00:04:50
    How To Use Template Refs
  • Урок 264. 00:07:58
    Components, Props & The Composition API
  • Урок 265. 00:02:34
    Emitting Custom Events
  • Урок 266. 00:03:43
    Working with Provide/ Inject
  • Урок 267. 00:05:15
    Lifecycle Hooks in the Composition API
  • Урок 268. 00:01:57
    Migrating from Options API to Composition API - An Example Project
  • Урок 269. 00:06:41
    Migrating a First Component
  • Урок 270. 00:12:39
    Migrating a Big Component
  • Урок 271. 00:11:57
    Migrating the Remaining Components
  • Урок 272. 00:07:28
    Routing, Params & The Composition API
  • Урок 273. 00:05:09
    The Route & Router Objects and the Composition API
  • Урок 274. 00:04:34
    Using Vuex with the Composition API
  • Урок 275. 00:03:11
    Summary
  • Урок 276. 00:01:17
    Module Introduction
  • Урок 277. 00:04:55
    Reusability Concepts
  • Урок 278. 00:04:49
    Using Mixins
  • Урок 279. 00:03:12
    Understanding Mixin Merging
  • Урок 280. 00:02:53
    Global Mixins
  • Урок 281. 00:03:29
    Disadvantages of Mixins
  • Урок 282. 00:08:41
    Custom Hooks / Composables & The Composition API
  • Урок 283. 00:03:49
    More Custom Composition Functions
  • Урок 284. 00:01:28
    Why Hooks / Composables Beat Mixins
  • Урок 285. 00:11:30
    Example: Creating a "Search" Hook
  • Урок 286. 00:08:44
    Custom Hooks Gotchas
  • Урок 287. 00:02:55
    More Thoughts on Custom Hooks / Composables
  • Урок 288. 00:05:30
    Example: A Custom "Sort" Hook
  • Урок 289. 00:00:56
    Thanks for being part of the course!
  • Урок 290. 00:03:09
    Course Roundup & Next Steps
  • Урок 291. 00:06:31
    Vue 3 - Overview
  • Урок 292. 00:17:52
    Important Changes & Migration Steps
  • Урок 293. 00:05:28
    Vue 3: New Features
  • Урок 294. 00:23:46
    The New Composition API (Optional!)