While there's not much excitement to report from my end this time around, I do have something special for you! I've snagged a ticket to the Vue.js Live 2024 Online conference, and I'm thrilled to raffle it off to one lucky subscriber. Check out the link below for your chance to join in on the action!
👉🏻 In this crash course David East will take you through all of the basics and build an Vue app using Authentication, Firestore, and Vue Router with VueFire.
👉🏻 In this article, we will learn how to build an static web app using Nuxt, with serverless APIs using Azure Functions CLI and Static Web Apps Emulator.
🔥 Vue Tip: Validate Props in Script Setup With TypeScript
You can define prop validations for your component in the script setupscript setup using the defineProps()defineProps() compiler macro. This is a great way to ensure that the props you receive are of the correct type and shape.
Let's first take a look at the official example from the Vue docs without using TypeScript:
1<script setup>2defineProps({3 // Basic type check4 // (null and undefined values will allow any type)5 a: Number,6 // Multiple possible types7 b: [String, Number],8 // Required string9 v: {10 type: String,11 required: true,12 },13 // Number with a default value14 d: {15 type: Number,16 default: 100,17 },18 // Object with a default value19 e: {20 type: Object,21 // Object or array defaults must be returned from22 // a factory function. The function receives the raw23 // props received by the component as the argument.24 default(rawProps) {25 return { message: 'hello' };26 },27 },28 // Custom validator function29 // full props passed as 2nd argument in 3.4+30 f: {31 validator(value, props) {32 // The value must match one of these strings33 return ['success', 'warning', 'danger'].includes(value);34 },35 },36 // Function with a default value37 g: {38 type: Function,39 // Unlike object or array default, this is not a factory40 // function - this is a function to serve as a default value41 default() {42 return ['one, two'];43 },44 },45});46</script>
Now let's rewrite the same example using TypeScript inside script setupscript setup:
All we need to do is define an interface for the props and use the withDefaultswithDefaults helper to set default values. TypeScript will take care of the rest.
👉🏻 Google introduced Interaction to Next Paint (INP) as a new Core Web Vital on March 12 to emphasize the importance of a website's overall responsiveness throughout a user's entire visit.
Weekly Vue News #194 Reactive Time Ago View online Hi 👋 I'm on vacation this week, so no special news from my side — just some fresh Vue & Nuxt content for you! Enjoy this issue and have a lovely week ☀️ Vue 📕 Optimizing heavy operations in Vue with Web Worke...
Read this on my blog We made it to 200! Thanks for reading and supporting me over the last few years, it means a lot to me. Tomorrow is the last day of the Composable Design Patterns course launch and the 35% off discount. If you were hoping to pick it up, don't forget to check it out! As always, I've got some tips and links for you, and a new podcast episode. Enjoy, and have a great week! — Michael 🔥 Default Content with Slots You can provide fallback content for a slot, in case no content is provided: < !-- Child.vue --> < template > < div > < slot > Hey! You forgot to put something in the slot! < / slot > < / div > < / template > This content can be anything, even a whole complex component that provides default behaviour: < !-- Child.vue --> < template > < div > < slot name = "search" > < !-- Can...
If you're using Vue 3, you're probably using composables. But other than using VueUse where you can, how do you get the most out of them? Over the past few years I've been slowly putting together a list of patterns and best practices for how to write composables in the best way. I've spent hours reading the source code of VueUse (one of the best — but most time-consuming — ways to learn it). I've read articles, listened to talks, and written lots and lots of my own code. I ended up with 15 different patterns, and each one will help you to write better composables. I've condensed and put all of these composables together into a course — Composable Design Patterns. Get Composable Design Patterns now. Because this is the launch, it's on sale for 35% off until Thursday. For each of the 15 patterns in this course, you'll get: A concise overview that tells you when and how to use it, along with variations and edge cases ...
评论
发表评论