Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Complete Vue Developer 2025: Zero to Mastery (Pinia, Vitest), а также все другие курсы, прямо сейчас!
Премиум
  1. Урок 1. 00:05:56
    Course Outline
  2. Урок 2. 00:04:02
    Join Our Online Classroom!
  3. Урок 3. 00:12:08
    Vue vs React vs Angular
  4. Урок 4. 00:02:14
    Composition vs. Options API
  5. Урок 5. 00:04:24
    ZTM Resources
  6. Урок 6. 00:07:38
    Getting Started
  7. Урок 7. 00:06:02
    Vue Dev Tools
  8. Урок 8. 00:08:44
    Working with Data
  9. Урок 9. 00:04:07
    Multiple Vue Instances
  10. Урок 10. 00:06:03
    Accessing the Instance Data
  11. Урок 11. 00:04:41
    Methods
  12. Урок 12. 00:05:08
    Directives
  13. Урок 13. 00:07:14
    Two-way data binding
  14. Урок 14. 00:02:40
    Binding Attributes
  15. Урок 15. 00:06:02
    Outputting Raw HTML
  16. Урок 16. 00:07:07
    Listening to Events
  17. Урок 17. 00:02:34
    Passing on Data with Events
  18. Урок 18. 00:02:32
    Event Modifiers
  19. Урок 19. 00:04:55
    Keyboard Events and Modifiers
  20. Урок 20. 00:05:20
    v-model Modifiers
  21. Урок 21. 00:09:07
    Computed Properties
  22. Урок 22. 00:03:13
    Watchers
  23. Урок 23. 00:08:10
    Binding Classes
  24. Урок 24. 00:05:14
    Binding Styles
  25. Урок 25. 00:10:05
    Conditional Rendering
  26. Урок 26. 00:04:25
    The v-show Directive
  27. Урок 27. 00:12:01
    List Rendering
  28. Урок 28. 00:08:16
    Understanding the role of the key attribute
  29. Урок 29. 00:11:46
    Creating a Perspective Playground
  30. Урок 30. 00:04:07
    Copying to the Clipboard
  31. Урок 31. 00:04:19
    Mounting the Vue Instance
  32. Урок 32. 00:04:41
    Understanding Lifecycle Hooks
  33. Урок 33. 00:09:22
    Using Lifecycle Hooks
  34. Урок 34. 00:07:23
    Virtual DOM
  35. Урок 35. 00:07:34
    Understanding Reactivity with Proxies
  36. Урок 36. 00:13:03
    The Vue Compiler
  37. Урок 37. 00:07:43
    Introduction to Components
  38. Урок 38. 00:02:17
    Overview
  39. Урок 39. 00:05:30
    Introduction to Vite
  40. Урок 40. 00:05:47
    Exploring Vite
  41. Урок 41. 00:08:01
    Understanding SASS
  42. Урок 42. 00:06:38
    PostCSS
  43. Урок 43. 00:04:53
    Installing ESLint
  44. Урок 44. 00:07:28
    Configuring ESLint
  45. Урок 45. 00:08:22
    Webpack
  46. Урок 46. 00:00:47
    Conclusion
  47. Урок 47. 00:09:09
    Scaffolding a Vue Project
  48. Урок 48. 00:05:26
    Sidebar: Understanding Servers
  49. Урок 49. 00:09:30
    Reviewing the Files
  50. Урок 50. 00:04:05
    Creating Components
  51. Урок 51. 00:08:17
    Child Components
  52. Урок 52. 00:06:30
    Component Styles
  53. Урок 53. 00:02:06
    Using SASS in Components
  54. Урок 54. 00:02:22
    Communicating Between Components
  55. Урок 55. 00:06:14
    Props
  56. Урок 56. 00:03:47
    The Limitations of Props
  57. Урок 57. 00:08:35
    Emitting Events
  58. Урок 58. 00:07:36
    Validating Props
  59. Урок 59. 00:04:59
    Callback Functions
  60. Урок 60. 00:08:34
    Inserting content with slots
  61. Урок 61. 00:07:08
    Named Slots
  62. Урок 62. 00:09:39
    Dynamic Components
  63. Урок 63. 00:09:48
    Animating with CSS Transitions
  64. Урок 64. 00:05:12
    Fine-tuning Transitions
  65. Урок 65. 00:08:33
    Animating with CSS Animations
  66. Урок 66. 00:06:35
    Animating with JavaScript
  67. Урок 67. 00:06:52
    JavaScript Zoom Animation
  68. Урок 68. 00:03:25
    CSS and JavaScript Transitions
  69. Урок 69. 00:08:54
    Animating a List
  70. Урок 70. 00:04:20
    Fixing the Animation
  71. Урок 71. 00:05:38
    Transition CSS Class Names
  72. Урок 72. 00:05:01
    Setting up the Quiz Application
  73. Урок 73. 00:12:05
    Rendering the Questions
  74. Урок 74. 00:10:45
    Moving between Questions
  75. Урок 75. 00:11:28
    Finishing Touches
  76. Урок 76. 00:02:57
    Exercise: Imposter Syndrome
  77. Урок 77. 00:01:32
    The Next Step
  78. Урок 78. 00:04:40
    Creating a New Project
  79. Урок 79. 00:06:20
    Reviewing the Files
  80. Урок 80. 00:04:31
    Formatting with ESLint and Prettier
  81. Урок 81. 00:08:14
    Adding the Template
  82. Урок 82. 00:05:37
    What is Tailwind?
  83. Урок 83. 00:07:59
    Installing Tailwind
  84. Урок 84. 00:05:16
    Practicing with Tailwind
  85. Урок 85. 00:04:01
    Loading Assets
  86. Урок 86. 00:05:35
    Understanding State
  87. Урок 87. 00:06:06
    Reviewing the Pinia Configuration
  88. Урок 88. 00:05:24
    Splitting the Template into Components
  89. Урок 89. 00:04:54
    Disabling Vue’s Rules
  90. Урок 90. 00:06:41
    Working with State
  91. Урок 91. 00:03:07
    Alternative Mapping Functions
  92. Урок 92. 00:01:32
    Understanding Getters
  93. Урок 93. 00:04:10
    Using Getters
  94. Урок 94. 00:02:06
    Closing the Modal
  95. Урок 95. 00:03:14
    Aliases
  96. Урок 96. 00:05:34
    Adding Tabs
  97. Урок 97. 00:04:31
    Setting up Form Validation
  98. Урок 98. 00:05:35
    Registering a Plugin
  99. Урок 99. 00:05:32
    Validation Components
  100. Урок 100. 00:03:49
    Defining Rules
  101. Урок 101. 00:05:36
    Applying Rules
  102. Урок 102. 00:06:32
    Additional Rules
  103. Урок 103. 00:03:41
    Validating Emails
  104. Урок 104. 00:04:33
    Validating Numbers
  105. Урок 105. 00:05:02
    Validating Passwords
  106. Урок 106. 00:07:30
    Dropdown and Checkbox Fields
  107. Урок 107. 00:04:02
    Validating the Form
  108. Урок 108. 00:08:35
    Sidebar: Slot Properties
  109. Урок 109. 00:06:23
    Rendering Multiple Error Messages
  110. Урок 110. 00:01:55
    Default Values
  111. Урок 111. 00:10:35
    Custom Error Messages
  112. Урок 112. 00:03:59
    Validation Triggers
  113. Урок 113. 00:08:58
    Showing Alerts
  114. Урок 114. 00:18:01
    Setting up the Login Form
  115. Урок 115. 00:06:25
    Understanding Authentication
  116. Урок 116. 00:04:51
    Reviewing the Rules
  117. Урок 117. 00:07:38
    Setting up the Firebase SDK
  118. Урок 118. 00:06:31
    User Registration
  119. Урок 119. 00:04:49
    Handling the Response
  120. Урок 120. 00:04:55
    Exporting Services
  121. Урок 121. 00:07:57
    Storing the User Form Data
  122. Урок 122. 00:06:26
    Understanding Authentication
  123. Урок 123. 00:06:48
    Logging the user in after Signup
  124. Урок 124. 00:02:23
    Understanding Actions
  125. Урок 125. 00:07:46
    Using Actions
  126. Урок 126. 00:08:26
    Connecting the User with their Data
  127. Урок 127. 00:04:40
    Initializing Firebase First
  128. Урок 128. 00:06:30
    Persisting the User Authentication
  129. Урок 129. 00:06:43
    Setting up the Login
  130. Урок 130. 00:08:04
    Signing Out
  131. Урок 131. 00:09:12
    Sidebar: JSON Web Tokens
  132. Урок 132. 00:04:46
    Understanding Routing
  133. Урок 133. 00:05:07
    Reviewing the Router Configuration
  134. Урок 134. 00:07:10
    Creating Routes
  135. Урок 135. 00:08:48
    History Mode
  136. Урок 136. 00:05:48
    Navigating with Links
  137. Урок 137. 00:05:22
    Custom Links
  138. Урок 138. 00:05:03
    Tailwind Styles for Active Links
  139. Урок 139. 00:04:16
    Naming Routes
  140. Урок 140. 00:06:24
    Setting up “Catch-All” and Redirect Routes
  141. Урок 141. 00:02:39
    Route Alias
  142. Урок 142. 00:05:14
    Guarding Routes
  143. Урок 143. 00:04:55
    Route Specific Guards
  144. Урок 144. 00:03:21
    Guarding Authentication Only Routes
  145. Урок 145. 00:04:56
    Redirecting after Logging Out
  146. Урок 146. 00:08:27
    Route Meta Fields
  147. Урок 147. 00:06:19
    Preparing the Upload Component
  148. Урок 148. 00:08:13
    Handling Drag and Drop Events
  149. Урок 149. 00:06:35
    Handling the File
  150. Урок 150. 00:01:21
    Enabling Firebase’s Storage Service
  151. Урок 151. 00:05:58
    Uploading Files with Firebase
  152. Урок 152. 00:07:02
    Firebase Rules and Validation
  153. Урок 153. 00:06:54
    Adding the Progress Bar
  154. Урок 154. 00:03:14
    Making the Progress Bar Dynamic
  155. Урок 155. 00:04:53
    Improving the Progress Bar
  156. Урок 156. 00:06:43
    Handling Errors and Successful Uploads
  157. Урок 157. 00:10:42
    Storing the File Data in the Database
  158. Урок 158. 00:02:38
    Firebase References and Snapshots
  159. Урок 159. 00:04:39
    Fallback Upload
  160. Урок 160. 00:04:46
    Canceling Uploads
  161. Урок 161. 00:07:02
    Cancelling Uploads with Refs
  162. Урок 162. 00:04:44
    One more thing about References
  163. Урок 163. 00:06:05
    Querying the Database
  164. Урок 164. 00:04:45
    Storing the List of Songs
  165. Урок 165. 00:03:03
    Displaying the List of Songs
  166. Урок 166. 00:02:53
    Prop Validation
  167. Урок 167. 00:02:48
    Toggling the Form
  168. Урок 168. 00:07:01
    Validating the Song Form
  169. Урок 169. 00:12:54
    Editing a Song
  170. Урок 170. 00:10:07
    Deleting a Song from the Storage/Database
  171. Урок 171. 00:08:05
    Updating the list of songs after an Upload
  172. Урок 172. 00:09:44
    Router Leave Guards
  173. Урок 173. 00:09:41
    Creating the Home Page
  174. Урок 174. 00:08:13
    Checking the Scroll Position
  175. Урок 175. 00:08:24
    Infinite Scrolling
  176. Урок 176. 00:04:48
    Path Parameters
  177. Урок 177. 00:09:54
    Creating the Song Template
  178. Урок 178. 00:03:59
    Validating the Comment
  179. Урок 179. 00:04:44
    Prepping the Form
  180. Урок 180. 00:10:24
    Finalizing the Comment Form
  181. Урок 181. 00:06:22
    Displaying the Comments
  182. Урок 182. 00:07:35
    Updating the Comments List
  183. Урок 183. 00:05:45
    Query Parameters
  184. Урок 184. 00:06:56
    Detecting Query Parameters
  185. Урок 185. 00:04:28
    Updating the Comment Count
  186. Урок 186. 00:07:28
    Storing the song in the State
  187. Урок 187. 00:03:34
    Playing Audio
  188. Урок 188. 00:10:04
    Toggling Audio
  189. Урок 189. 00:06:14
    Duration and Current Position
  190. Урок 190. 00:04:33
    Formatting the Time
  191. Урок 191. 00:08:22
    Player Progress Bar
  192. Урок 192. 00:10:24
    Changing the Audio Position
  193. Урок 193. 00:04:49
    Creating links with Hash Fragments
  194. Урок 194. 00:04:45
    Route Transitions
  195. Урок 195. 00:05:32
    Introduction to Directives
  196. Урок 196. 00:05:48
    Writing our First Directive
  197. Урок 197. 00:05:23
    Passing Values to Directives
  198. Урок 198. 00:05:07
    Directive Modifiers
  199. Урок 199. 00:04:41
    Registering a Directive Locally
  200. Урок 200. 00:06:02
    Introduction to i18n
  201. Урок 201. 00:07:08
    Our First Translation
  202. Урок 202. 00:06:41
    Formatting and Pluralization
  203. Урок 203. 00:08:40
    Number Localizations
  204. Урок 204. 00:05:57
    Translating HTML with Component Interpolation
  205. Урок 205. 00:05:42
    Changing Locales
  206. Урок 206. 00:02:51
    Exercise: Translating the Rest of the App
  207. Урок 207. 00:04:20
    What are Progressive Web Apps?
  208. Урок 208. 00:05:25
    The Manifest File
  209. Урок 209. 00:05:36
    Generating the Manifest File
  210. Урок 210. 00:03:31
    Configuring the Manifest File
  211. Урок 211. 00:06:01
    Offline Support with Service Workers
  212. Урок 212. 00:03:01
    Understanding Caching
  213. Урок 213. 00:05:17
    Workbox
  214. Урок 214. 00:04:19
    Firebase Data Persistence
  215. Урок 215. 00:05:36
    Handling Offline Uploads
  216. Урок 216. 00:01:55
    Overview
  217. Урок 217. 00:10:39
    Auto-Registering Global Components
  218. Урок 218. 00:07:18
    Perceived Performance
  219. Урок 219. 00:05:54
    Dynamic Route Imports
  220. Урок 220. 00:05:40
    Progress Bar
  221. Урок 221. 00:04:01
    Code Coverage
  222. Урок 222. 00:05:03
    Rollup Visualizer
  223. Урок 223. 00:11:18
    Deploying an App with Vercel
  224. Урок 224. 00:12:16
    Introduction to Testing
  225. Урок 225. 00:02:51
    Introduction to Vitest
  226. Урок 226. 00:02:56
    Adding the Vitest UI
  227. Урок 227. 00:08:58
    Writing Our First Test
  228. Урок 228. 00:06:40
    Mounting with Vue Test Utils
  229. Урок 229. 00:04:16
    Testing the Inner Content
  230. Урок 230. 00:05:12
    Passing Data to Components
  231. Урок 231. 00:04:51
    Stubbing Components
  232. Урок 232. 00:01:38
    Avoid Boolean Assertions
  233. Урок 233. 00:06:31
    Testing Children Components
  234. Урок 234. 00:05:34
    Mocking Methods
  235. Урок 235. 00:06:29
    Testing Attributes
  236. Урок 236. 00:06:08
    Testing Pinia Actions
  237. Урок 237. 00:04:15
    Mocking Promises
  238. Урок 238. 00:06:36
    Testing Router Components
  239. Урок 239. 00:11:55
    Snapshot Testing
  240. Урок 240. 00:06:31
    E2E Testing Overview
  241. Урок 241. 00:12:22
    Writing an E2E Test
  242. Урок 242. 00:06:01
    The Composition API
  243. Урок 243. 00:10:24
    Mixins
  244. Урок 244. 00:07:10
    Reactive References
  245. Урок 245. 00:07:05
    The Reactive Function
  246. Урок 246. 00:08:04
    Watchers and Computed Properties
  247. Урок 247. 00:03:08
    Lifecycle Functions
  248. Урок 248. 00:06:10
    Props
  249. Урок 249. 00:04:39
    Template Refs
  250. Урок 250. 00:01:55
    Emitting Events
  251. Урок 251. 00:11:52
    Advantages of the Composition API
  252. Урок 252. 00:07:43
    Router Hooks
  253. Урок 253. 00:03:04
    Pinia Hooks
  254. Урок 254. 00:03:09
    Verifying Reactivity
  255. Урок 255. 00:02:59
    The setup Attribute
  256. Урок 256. 00:01:14
    Section Overview
  257. Урок 257. 00:17:57
    Controlled Components
  258. Урок 258. 00:04:56
    Separation of Concerns
  259. Урок 259. 00:14:05
    Third-Party Libraries as Controlled Components
  260. Урок 260. 00:11:28
    Moving Beyond Vue’s Event System
  261. Урок 261. 00:08:36
    Encapsulating Scrolling
  262. Урок 262. 00:11:56
    The Teleport Component
  263. Урок 263. 00:01:18
    Thank You!
  264. Урок 264. 00:10:06
    Using The Terminal/Command Prompt
  265. Урок 265. 00:03:06
    Running script.js In Node
  266. Урок 266. 00:04:23
    Modules In Node
  267. Урок 267. 00:09:01
    ES6 Modules In Node
  268. Урок 268. 00:05:11
    Types of Modules