I switched from Netlify to Render to build & deploy my applications because it's a cheaper solution. This newsletter costs ~$70 per month and I usually don't have a paid sponsorships which means it generates $0 in revenue each month.
If you are thinking about starting a newsletter yourself, be aware that it will cost you a lot of time and money and you probably won't make any money from it for a long time.
👉🏻 In this example-driven talk, Eduardo explains some of the bad practices he has seen in Pinia as well as the good ones that should have been used instead.
👉🏻 A collection of Vue composables for creative coding.
👉🏻 VueXYZ doesn't render anything for you.
👉🏻 You may decide to take the data and render it to canvas or SVG, or you might use it to drive animations, or anything else.
🔥 Vue Tip: How I Write Class & Style Bindings
Styling your components in Vue.js can be done in multiple ways. One of the most common ways is to use the classclass attribute, especially if you are using a CSS framework like Tailwind. In combination with v-bindv-bind you can dynamically assign classes to your components. The same goes for the stylestyle attribute, which allows you to apply inline styles to your components.
I prefer the combination of the class attribute in combination with :class:class to apply a list of classes as an array:
The classclass attribute is an array of classes that should always be applied to the element. The classes bound via :class:class are computed properties that are dynamically evaluated and added to the element.
This way, I can easily distinguish between classes that should always be applied and classes that are conditionally applied.
You can also toggle a class inside the list of classes based on a condition:
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...
Hey! In yesterday's email I shared what I think is the key feature to making Vue components highly reusable: Scoped slots. But scoped slots are hard to grasp, and even more difficult to master. So today, we're going to make sure we understand them on a deep, intuitive level. Then, I'm going to introduce you to the magic ✨ of scoped slots. The trick is to think of them as functions. Slots are just functions We're going to recreate the functionality of slots, but we'll use a regular Javascript function that only returns HTML. This is the code we'll replicate: <!-- Parent --> < template > < div class = "modal-container" > < div class = "modal" > Content in the Parent < Child class = "mb-4" v-slot = "{ text }" > ...
评论
发表评论