SSX is a good game! I used to play SSX on Tour in my golden years,
@taunado3 күн бұрын
Epic game, man's got good taste
@1duducmАй бұрын
Thanks
@andredasilva68072 ай бұрын
whats the vscode theme? look great
@E555killa2 ай бұрын
24:00 Instead of the JSON.stringify I’d recommend looking into the defineModel macro. This macro was released with Vue3.4 in december 2023. Which would’ve been around the time this conference was recorded. Which is probably why this wasn’t included in this talk.
@ondrej6892 ай бұрын
8:41
@hifijohn2 ай бұрын
Vue with You.
@MrJloa3 ай бұрын
Just to point out. The most ugly thing done bad in vue3 is refs which reference the dom. I got no idea why evan made it so bad, whereas the perfect solution was so obvious -- just introduce $ref() for dom refs. Why? const foo = ref(null). What is foo at runtime? A number? Boolean? Collection? U never know. U need to check the template part to be sure. And if that's a dom element, u now can't use the name 'foo' coz it's reserved coz of the ref name. Looks like bs. A proper implementation would be: const notFoo = $ref('foo') const foo = ref(1) Now i see that notFoo is a dom reference, which references a ref=foo element, moreover that attribute doesn't pollute my code (doesn't restrict me from naming smth foo in my code) It seems like evan was drunk while he was implementing dom refs in vue3
@MrJloa3 ай бұрын
It gets even worse when u review a lot of code on the browser (gitlab/github). This really pisses me off. We even made conventions addressing this annoying vue3 thing. Btw vue2 had a much better implementation
@derHodrig3 ай бұрын
Give John a boonie hat and cigar, and he just looks like "captain john price" from COD
@tropicaljupiter3 ай бұрын
I use reactive like const state = reactive({ thing1: ‘defaultValue’, thing2: -1 )}; In other words, I use it to group state together. Don’t show me 10 lines of individual refs for a small form, just make a reactive formState object.
@MrJloa3 ай бұрын
Yep. That's what i do. Always use reactive and make a context like reactive({ posts:[], pageId:1 }) U can now easily reassign posts, also u can pass around the reactive context and u don't have those zillions of refs defined and that crappy ".value" which just looks ugly af.😂
@kylelogue94084 ай бұрын
I'm jealous of what your company is moving to! My company is stuck with a monolith for now :(
@apglazkov4 ай бұрын
20:37 - "Hydration mismatch" - even in a single file tutorial example 😅 If a developer can make a mistake so easily, it means there is something wrong with the platform itself. Meanwhile, Vue.js developers still can't stop smiling in all their videos, feigning happiness 😂 "This is fine" 🔥🐶🔥
@apglazkov4 ай бұрын
"Can anybody tell me what is wrong with this code?" "Yes: Vue.js!" 😏
@dannjohnrem4 ай бұрын
Wow, you’re amazing! How can I be as incredible as you?
@PureGlide6 ай бұрын
Great video, thanks! Wish I saw this 2 years ago. Personally I wish I could just mutate props, OR create a new 'v-model' style thing or prop alternative that works both ways. It would make most of the simple stuff syncing between parent/child quicker and easier. Quicker and easier is the whole point of reactive stuff in the first place! The defineModel() is almost that. Now I just bung most data in a composable or Pinia store anyway so it syncs globally...
@Figurum6 ай бұрын
awesome🎉
@Praveenstein7 ай бұрын
Thanks, amazing content
@LeBossuMauve7 ай бұрын
Amazing presentation. Very impressive. Very very well presented!
@MatiasPiumaAtSesameHR7 ай бұрын
Great talk Adam, thanks for sharing your experience!
@jored567 ай бұрын
In that last mutating props example, wouldn't _data be initialized only once, so once u pass that object up to the parent (and the parent doesn't clone it), you'll end up still mutating the same object? 23:59
@praveshishere6 ай бұрын
yes, _data would only be initialized once and in order to overcome that you would have to watch data prop and update _data correspondingly (which would also result in either losing all the changes child component made or patching those changes on the new data received from parent based on your design), when we emit _data to parent, if the parent has used a ref, it would be easily updated no issues with that, though I am not sure what would happen in case if was created using reactive (since I only use refs)
@LarryStone-q6r9 ай бұрын
Great talk especially the "Preserve Object" pattern. I don't think I've ever seen this question broached before so… thank you!
@kelvinoritsetimeyin81199 ай бұрын
terribly slow lecture 😞
@myPrzeslaw6 ай бұрын
KZbin alows you to adjust speed.
@preskoeducation74649 ай бұрын
When does prop drilling become too much? In the example Michael used there was a three-level hierarchy of components. Do we consider this prop drilling big enough so that we need to replace it by the Data Store Pattern, which also adds other complexities? Can anyone share own experience, as I'd like to explore different point of views
@WgW0skate9 ай бұрын
You can also use provide/inject to not pass props to deep in component trees. EDIT: Tbh if props are passed from parent component down 2 components without any changes along the way, it's just more elegant not to use prop drilling, as someone might add components later, and prop drilling and bubbling events becomes massive issue in code redability, but that's just my point of view :)
@coder_one4 ай бұрын
If you have to pass props down more than 2 times then you should seriously consider inject/data store
@rrd_webmania10 ай бұрын
I am postponing migrating a middle size project from vuex to pinia. This video gave me a boost.
@viktordenisov336810 ай бұрын
for students
@charlescairney10 ай бұрын
Fantastic talk, have never thought of doing the bridge for both, going to suggest it in work when I get the chance 👍
@williamgalas633110 ай бұрын
second comment
@Sergio-uo6xv10 ай бұрын
'promo sm' 👉
@falklumo11 ай бұрын
It may be worthwhile to note that Living Pages Research in 2000 did the exact same thing with the FormsX library. Except with <FormsKit> replaced by <applet>. It was the pre AJAX era ;)
@najlepszyinformatyk166111 ай бұрын
Totall basics. nothing interesting
@someoneelse500511 ай бұрын
I have no idea what you would expect from common mistakes in a video, they are common for a reason
@baraa786910 ай бұрын
@@someoneelse5005 true af 🤣
@justinhalsall407711 ай бұрын
I liked the pattern that eliminates prop drilling, but I can’t help to think it would be a nightmare combining it with Storybook
@preskoeducation74649 ай бұрын
Hey, Did you try combining it with Storybook? Did it work?
@karlstenator11 ай бұрын
I wish I had more hours in my day to work within Vue 3. Recently I've been focused on all things VitePress, and loving every minute of it - thanks for such excellent work to everyone involved! 🏆
@Steklopod11 ай бұрын
Nice 👍
@user.nickname Жыл бұрын
I'm too lazy to read the documentation, a very useful video, I learned everything I need from here, thank you
@williamsabates4023 Жыл бұрын
Great talk ! i love it ! Is it possible to have more examples or a git repo ?
@izzy754111 ай бұрын
Yes, I would like more examples :)
@AnonymousShaco Жыл бұрын
Thanks a lot
@_nom_ Жыл бұрын
I still haven't forgiven you for breaking Vue 2 so bad with Vue 3. I really don't want to use it after the messup.
@RDaneelOliwav Жыл бұрын
I really love V3, it's so much better and convenient
@cant_sleeeep10 ай бұрын
come on dude
@gsindar10 ай бұрын
Vue 3 and composition API way way way better than Vue 2. Open your eyes man...
@valnuke7 ай бұрын
i have switched to 3 and it doesn't seem THAT different...
@Cumlet7 ай бұрын
vue 2 sucks ass in comparison to 3
@luatthaivan6449 Жыл бұрын
is cloning the object will make some performance issues if the object is complex or have function properties ?
@bishowpandey4535 ай бұрын
Yes
@TheAlexLichter Жыл бұрын
Thanks a lot for having me 💚🙏 Any questions left? Let me know below! 🙌
@junaga2 Жыл бұрын
> vite has evolved from just a dev server to something that is much more significant. I agree, it's the new core-js.
@yankee-in-london Жыл бұрын
Evan, I think it's important that you physically make it to these events. I know Toronto is a long way from home but most of a conference is about connecting and that just doesn't happen over a video feed. Secondarily physical proximity produces accountability and focus on preparation that doesn't happen (as well intentioned as you are). The kickoff to this presentation was awkward, a primary focus on the past -- while intellectually interesting -- is not a good way to encourage excitement in the community. You're an amazing individual and a great presenter but this presentation was not up to your standard nor does it show a firm commitment to VueJS and encourages the idea that your focus has shifted to the larger ViteJS playing field. I still firmly believe VueJS is a 1st class SPA framework and still my favorite but effort needs to be made to stay relevant (when your name is not pronounced "React" and you're no longer the coolest kid on the block). I do get that as the SPA space matures, it's harder to be "sexy" in the change that's released but basic blocking and tackling needs to be executed on (which includes physical attendance of events). COVID made us all get used to work from home but also enabled lazy behavior (the latter we can't continue as we move forward). I don't know nearly enough about your day to day to say you're lack of attendance was lazy (my guess is it was not) but I will say with confidence that this year's talk was delivered with less enthusiasm and apparent preparation than those in the past. Your voice only sounded excited when you switched to ViteJS and IMHO the only emphasis ViteJS should get in a VueJS conference is how Vue integrates with it. I love ViteJS but it is a cross-platform tool and it's scope causes more problems than it solves.
@yankee-in-london Жыл бұрын
I feel like a dick for not being a cheerleader but someone needs to communicate the "what you could do better message"
@yankee-in-london Жыл бұрын
Ironically, the only reason this video showed up in my feed was that I searched for ViteJS 5.0 and got nothing
@junaga2 Жыл бұрын
no, no one cares. we are developers, not talkshow hosts.
@yankee-in-london Жыл бұрын
@@junaga2 I've been a developer since 1979 and still am. Regarding talk show host reference you've got me at a loss. I guess I assume you were trying to make fun of me in some way but as it really makes no sense it kinda falls flat.
@yankee-in-london Жыл бұрын
What i think many people of younger generations think is that anything but positive feedback is an attack. I don't want to presume too much but when I grew up well intentioned feedback was a gift and IMHO those who rise to the top in this world still typically hear it that way.
@TheAlexLichter Жыл бұрын
Great to get some insights & learnings of the Vue 2 to Vue 3 transition. 🙌
@jendiamond90026 Жыл бұрын
I am wondering if you are going to post the other talks. I gave a lightening talk and I'd love to have it for reference.
@mydadletsmeshootatcats6754 Жыл бұрын
Love the refactoring tactics.
@vanminh7740 Жыл бұрын
I can't run npm install after clone the example repo. it seem's something wrong.
@indexzet Жыл бұрын
vee validate docs are so poor
@mel-182 Жыл бұрын
What about defineProps, would you duplicate defineProps per logic? Or, just put it blow imports?