I had a good time at Vue.js Amsterdam! I happened to be sitting next to a newsletter subscriber, greetings go out to Julian!
We're close to 3000 subscribers of this newsletter which is a big milestone for me. It would help me a lot if you would recommend the newsletter to your colleagues and friends. 🙏🏻
🔥 Nuxt Tip: How Nuxt Uses Nitro, h3 and ofetch Internally
If you are using Nuxt 3 you might stumble upon one of the following tools: NitroNitro, h3h3 or ofetchofetch. I often see that people are confused by these tools, so let me clarify their responsibility and how Nuxt uses them internally.
All of the following packages are published in the UnJS ecosystem which consists of 56+ packages.
ofetch
Nuxt provides access to ofetchofetch via the $fetch$fetch API. Its described as "A better fetch API. Works on node, browser, and workers".
It can smartly parse JSON responses (with access to raw response if needed) and request body and params are automatically handled, with correct Content-TypeContent-Type headers.
h3
h3h3 is an H(TTP) server framework built for high performance and portability running in any JavaScript runtime.
Its event handlers automatically convert responses. For example, if you return a JSON object it will be stringified and sent with the default application/json Content-Type header. If an event handler returns a Promise, h3 will wait for it before it sends the response. Additionally, it provides a set of useful helper functions for body parsing, cookie handling, redirects, headers and more.
Nitro
NitroNitro uses h3h3 internally and is a server toolkit to create web servers with everything you need and deploy them wherever you prefer.
It provides cross-platform support for Node.js, Browsers, service-workers and more. Additionally, it supports API routes and middleware and a development server with hot module reloading
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 ...
评论
发表评论