First look at Signals in Angular

  Рет қаралды 46,552

Decoded Frontend

Decoded Frontend

Күн бұрын

Пікірлер: 114
@DecodedFrontend
@DecodedFrontend Жыл бұрын
💥 Start to develop Angular Forms like a PRO with my in-depth Course💥 🔗 10% discount for the first 10 students - bit.ly/advanced-ng-forms-10
@mukeshm280
@mukeshm280 Жыл бұрын
Can I get a coupon code?
@DecodedFrontend
@DecodedFrontend Жыл бұрын
@@mukeshm280yes, just write me at dmytro@decodedfrontend.io
@luqeckr
@luqeckr Жыл бұрын
is there any certificate (of completition at least) after finishing the course?
@DecodedFrontend
@DecodedFrontend Жыл бұрын
@@luqeckr Hi! yes, there is a certificate of completion
@haroldpepete
@haroldpepete Жыл бұрын
when the master talk about something new about angular, students just listen and learn, you're in a point where i only believe in your videos and all that things you show me in angular, keep it real
@darwinwatterson1732
@darwinwatterson1732 Жыл бұрын
Finally! I was waiting for this video. Thanks a lot for you dedication!
@DecodedFrontend
@DecodedFrontend Жыл бұрын
Thanks a lot for your support! :)
@AlainBoudard
@AlainBoudard Жыл бұрын
Excellent presentation as always ! Thanks for the great content 😎
@josephsackeykontor4138
@josephsackeykontor4138 Жыл бұрын
I love this change. Thanks for the clear explanation
@julienwickramatunga7338
@julienwickramatunga7338 Жыл бұрын
Thank you for the clear explanations and code samples! Can't wait for this feature to be released as stable, as you said, it will be a nice way for Angular to become more attractive to newcomers 🙂
@MoMoadeli
@MoMoadeli Жыл бұрын
Thanks!
@magda77850
@magda77850 Жыл бұрын
great introduction to signals! Thanks 😄 can't wait to see next video about change detection 😉
@DecodedFrontend
@DecodedFrontend Жыл бұрын
Thank you! in 2 weeks ;)
@srushtidaware7978
@srushtidaware7978 Жыл бұрын
This resembles me towards React's state variable(signal in angular) and useEffect(effect in angular)
@d34d10ck
@d34d10ck Жыл бұрын
Or the upcoming runes in Svelte 5. It's all the same basically.
@povezlo46
@povezlo46 Жыл бұрын
With each new video the design of your room looks better and better))
@DecodedFrontend
@DecodedFrontend Жыл бұрын
Haha, hopefully the content quality as well 😄
@miroslavjakovcic4585
@miroslavjakovcic4585 11 ай бұрын
Nice. Do you have any recommendation on how to employ Signals for input fields in reactive forms, especially with custom validation?
@mihaioltean6008
@mihaioltean6008 Жыл бұрын
Hey Dymtro, this one came exactly on time. I was trying to understand what's with the hype and you provided a clear explanation to me. Thanks! Got two questions: 1.) Usually, when we transform a value in the template we usually do it through pure pipes in order to avoid unnecessary change detection. Do you think that signals will make pipes obsolete? 2.) Isn't there a chance of circular dependency between computed signals? I wonder if it will be marked in a way at build time or through lint
@genyklemberg
@genyklemberg Жыл бұрын
whant to know also
@DecodedFrontend
@DecodedFrontend Жыл бұрын
Hi :) Thanks for your questions. 1) Well, I don't think that pipes will become obsolete. Optimization of CD isn't their direct responsibility, they are being used in order to transform data in a template and the pipe doesn't care if the value comes from Signal, class property, or from another pipe (e.g async pipe). 2) Good question. I think this question is better to ask maybe here github.com/angular/angular/discussions/49090 because frankly speaking, the topic is very new and I don't have enough knowledge yet to answer this question :)
@hfspace
@hfspace Жыл бұрын
nice questions!
@Hariharan0606
@Hariharan0606 Жыл бұрын
Thanks a lot for this video !! waiting for change detection :)
@asifnawazmiani
@asifnawazmiani Жыл бұрын
Well, no words than just Love you bro, just damn stuck on your channel hehe, for this kind of detailed videos on Angular ❤️
@ihor-pidhornyi
@ihor-pidhornyi Жыл бұрын
Great overview, thank you! It could be great to see how signals will look with different components comunications on different levels. For istance, via services or how it'll look with @Input ? Do we need to write setter in case to set signal from parent to child? And it seems great this will reduce amount of async pipes in templates and takeUntils in component code. As I see, it'll also reduce amount of rxjs code, for example we can all forget about combineLatest, and just use signals in the effect and in the computed. Correct me if I'm wrong)
@DecodedFrontend
@DecodedFrontend Жыл бұрын
Yes, you are right 🙌 about @Inputs() and signals there will be information soon 😉
@yogeshalwani9256
@yogeshalwani9256 Жыл бұрын
like observable, does signal need to be destroyed or unsubscribed when view destroyed ? are angular teams sure about no consequences like an observable leak will occur while using the signal over than rxjs ? I am very excited to use this on behalf of the component store of ngrx.
@nephilimson
@nephilimson Жыл бұрын
Great presentation but I'm still curious how the compute and effect know the signals have changed in their callbacks. Appreciate it if you could make a video of how the signal and hooks work under the hood Thanks
@ivanperun3565
@ivanperun3565 Жыл бұрын
Thank you for video ). What about template rendering ? If I use onPush strategy and ngZone: noop (zoneless), signals don't update in template, I should use cdRef.detectChanges() for rerender compnent template. Maybe I didn't fully understand, but how does the template know if the signal has been updated without using zones. I do not want overendering , need to render only specific component or some scope of component (also used rx-angular/template).
@zhdanvadim9536
@zhdanvadim9536 Жыл бұрын
Thanks for the new video!
@MrKOHKyPEHT
@MrKOHKyPEHT Жыл бұрын
Since angular 16 is coming I've decided to watch this video again...and again...and again (just in case) :)
@ivandynysiuk4341
@ivandynysiuk4341 11 ай бұрын
Thanks for the clear explanation 😎
@Aliakbaresmaeiliiii
@Aliakbaresmaeiliiii 6 ай бұрын
there is no word to say for this good video❤💙
@jediampm
@jediampm Жыл бұрын
Hi, thanks for the video. As Angular dev since version 2+ used in professional projects , for me is a big BREAKING CHANGES and BS. They should choose the svelte way, which in terms of DX is better as much close to what exist now. They choose the solidjs / vue way, in my opinion wrong. if this is accepted and moved to stable, i will have to make a choice, which will be to find another job and choose another framework. Because i will not waste my time to learn this and to update the company app to use this hell verbose BS syntax. this will be the real end of this framework because they didnt learn what happen with angularjs to angular 2.. A lot dev switch from angularjs to react or vue. Good luck to all still Angular devs. ;)
@yuriinadilnyi3029
@yuriinadilnyi3029 Жыл бұрын
As always well done 👍
@musoverda
@musoverda 10 ай бұрын
Are there already any standards (generally accepted rules) for writing variable names for signals?
@DecodedFrontend
@DecodedFrontend 10 ай бұрын
Hi! There are no such rules as far as I know :)
@ommo289
@ommo289 Жыл бұрын
thanks Dmytro for nice presentation!
@mahendranath2504
@mahendranath2504 Жыл бұрын
Thank you so much for the amazing content, subscribed and liked🙌🙌👌👌😍😍👍👍
@balajibalamurugan8053
@balajibalamurugan8053 Жыл бұрын
I was waiting for this video, Finally 🤩
@DecodedFrontend
@DecodedFrontend Жыл бұрын
🎉 Yeeah!!! I hope you'll like it ;)
@afsirlaghari3738
@afsirlaghari3738 Жыл бұрын
Thank you, dear...Me, watching your videos from Pakistan.
@beeTechSE
@beeTechSE Жыл бұрын
Hi, dear Dmytro. Would you please create another video about signals and describe the new APIs that have been added to it? I cannot wait until you create that video.
@mouazalkhodari6407
@mouazalkhodari6407 Жыл бұрын
very lovely and self explained video thank you keep going
@lhargil
@lhargil Жыл бұрын
Thank you very much for a very good explanation!
@DecodedFrontend
@DecodedFrontend Жыл бұрын
Glad you liked it :)
@ihoryanovchyk
@ihoryanovchyk Жыл бұрын
Thanks, Kozache!
@DecodedFrontend
@DecodedFrontend Жыл бұрын
😉
@zaktreister1995
@zaktreister1995 Жыл бұрын
Thanks King!
@gagiksimonyan3782
@gagiksimonyan3782 Жыл бұрын
thanks for another useful video, Dmytro ;)
@atmn_pawel
@atmn_pawel Жыл бұрын
do you have ngZone: 'noop" set in this demo ?
@DecodedFrontend
@DecodedFrontend Жыл бұрын
No, I didn't do that. Currently, signals work in the context of ZoneJs. A new CD mechanism will come in a bit later.
@dennis87ist
@dennis87ist Жыл бұрын
Hi Dmytro! In my application I declared a lot of variable as Observable. Can signals be used to replace Observable?
@DecodedFrontend
@DecodedFrontend Жыл бұрын
it depends :) Currently, there is a consensus that Signals are good for synchronous reactivity and observables are good for scenarios when you have to deal with async stuff e.g. events, http calls, etc. So I would say that it is better to use both.
@oleksandrvorovchenko8674
@oleksandrvorovchenko8674 Жыл бұрын
Thanks! Well done.
@The14Some1
@The14Some1 Жыл бұрын
13:34 the way you wrote this effect was very misleading and confusing. I was forced to check if it makes sense on preactjs myself.
@XFuriousGamming
@XFuriousGamming Жыл бұрын
This is great content. Keep it up!
@nelson3391
@nelson3391 Жыл бұрын
Thanks! Excellent content!
@yufgyug3735
@yufgyug3735 Жыл бұрын
does angular 16 still contain zonejs? if yes, what happens if we use this predicted api to convert signal to observable - does it trigger old change detection based on zonejs, or are we staying on signal based system, since underlaying values are emitted by a signal?
@DecodedFrontend
@DecodedFrontend Жыл бұрын
I can say for sure that zonejs will stay in the next major releases because migration and adoption of signals will take a decent amount of time. Regarding how it will work exactly I can't say now because this feature wasn't even pushed to the Angular repo yet :) I think things will become a bit clearer when the angular core team will publish the first RFC.
@TuHoang-jt8lf
@TuHoang-jt8lf Жыл бұрын
It like a new Angular and I have to learn from scratch again
@volodymyrusarskyy6987
@volodymyrusarskyy6987 Жыл бұрын
This is like a mix of old EmberJs and KnockoutJs
@TravisSomaroo
@TravisSomaroo Жыл бұрын
Great content!
@michalwroblewskimobi
@michalwroblewskimobi Жыл бұрын
KnockoutJS, we meet again
@DecodedFrontend
@DecodedFrontend Жыл бұрын
All new is well forgotten old 😄
@evtihii
@evtihii 4 ай бұрын
Thanks for information. Still I didn't get the real experience of using signals. Long story short why we need it. It looks like a getter actually
@Chantimedidi
@Chantimedidi Жыл бұрын
Bro can you please explain about component store?
@alexandrefaustino2448
@alexandrefaustino2448 Жыл бұрын
So what is the actual peformance gain. So Signal do not need a | async pipe in order to be updated. ChangeDetectionStrategy will be remove ?
@DecodedFrontend
@DecodedFrontend Жыл бұрын
Yes. No need for an async pipe. ChangeDetectionStrategy flag will (most probably) become obsolete in the future. One of the reasons for performance gain will be that Angular will do Change Detection only for components where their data model has changed.
@ilyabielov9864
@ilyabielov9864 Жыл бұрын
Дякую :)
@TheoLeChnow
@TheoLeChnow Жыл бұрын
great video thx :)
@AlphaFrog1021
@AlphaFrog1021 Жыл бұрын
wouldn’t accessing signal value with function call in template cause problems with cd?
@DecodedFrontend
@DecodedFrontend Жыл бұрын
No, it is fine to use signals like that. By the way, functions in the template are also safe to use unless those functions do some expensive computations, loops, etc
@SheriffZmroka
@SheriffZmroka Жыл бұрын
There are some really cool things in your videos. Have you thought about running courses on global platforms like Udemy? I found out about your channel by accident and I think they will be popular on Udemy.
@DecodedFrontend
@DecodedFrontend Жыл бұрын
Hi :) I actually hosted my courses on Udemy some time ago but I intentionally moved from there because Udemy has terrible conditions for course authors.
@SheriffZmroka
@SheriffZmroka Жыл бұрын
@@DecodedFrontend Hmm. Maybe then the egghead platform? Because the content is really good, and it needs to be popularized.
@YehorKanaiev
@YehorKanaiev Жыл бұрын
Це як async в компоненті. Але ось я не сильно розумію, як сигналом можна буде замінити RxJS. Там же так багато операторів. І скажімо observable зараз добре притосований для http запитів, коли можна купу кейсів покрити різними операторами. Скажімо можна було б зробити бібліотеку, яка б при створенні http запиту приймала 2 агрументи: сигнал і error колбек. Ця звязка була б легшою чим rxjs, але менш функціональна.
@hfspace
@hfspace Жыл бұрын
signals seem promising for sure, although i like my piped observables :-)
@DecodedFrontend
@DecodedFrontend Жыл бұрын
Fortunately, we can use both 😉
@mehmeh533
@mehmeh533 Жыл бұрын
Love it!
@_dinesh
@_dinesh Жыл бұрын
Thank you for the great video. I dont like the syntax.. signal, effect and compute it looks a little weird. Very react-ish..
@rikizy528
@rikizy528 Жыл бұрын
It looks similar to knockout binding
@LeungWong
@LeungWong Жыл бұрын
The style of signal make Angular look kind of similar to React. signal would be similar to useState, and effect would be similar to useEffect. Technically maybe they are different thing, at least for signal. But the way of writing the code feels a bit React.
@zhandosainabek
@zhandosainabek Жыл бұрын
And "computed" thing looks like VueJs :)
@damiankowalski8541
@damiankowalski8541 Жыл бұрын
I feel the same way, except I think with signals you do not have to explicitly state the dependencies
@ghkpr
@ghkpr Жыл бұрын
tldr, angular is now react?
@ValeriiPetrenko-z6j
@ValeriiPetrenko-z6j Жыл бұрын
Have been using Angular since v4 and Zone js was never been a real pain in terms of cd, I just turn it off by default with noop bootstrap option, thats it. The main flaw of using zone js in Angular is much wider and no one really talking about it, it is the fact that zone js initializing in browser swaps some native code functions with its wrappers and if Angular is the only app on the page it is not noticeable, but if there are more apps on the page with different technologies, plugins or microfrontends, then they all become using those patched functions, because they are share the same window api, even worse in scenario when some another app initialized its things with native code, then zone js appears and in the middle swaps window api and ZoneAwarePromise error could appear in sibling apps, etc. Even the fact that you developing some code modules relying on native api, testing it, then realize it is swapped in runtime with something different, somehow magically working indeed but it is not something what you expecting.
@vishwajeetsavandkar7617
@vishwajeetsavandkar7617 Жыл бұрын
@bornathepicek
@bornathepicek Жыл бұрын
Why is Luka Doncic teaching me about Angular?
@josemiguelochoa5372
@josemiguelochoa5372 Жыл бұрын
Yo.. When did Luka Doncic become a software developer 🤔
@kumarvadivel4328
@kumarvadivel4328 Жыл бұрын
this very much unwanted feature in angular. which complicates the understandablity metric of the framework
@DecodedFrontend
@DecodedFrontend Жыл бұрын
Thank you for your feedback :) maybe it is just a first impression😉
@sergeymois6302
@sergeymois6302 Жыл бұрын
Дякую за вашу роботу. Можливо вам буде в нагоді почути як нейтіви вимовляють слова process, mechanism .
@unhandledexception1948
@unhandledexception1948 Жыл бұрын
annoying to see that angular is adopting a dumbed down react / vue style paradigms when it already had a superior approach to reactivity
@stanisawgolinski3244
@stanisawgolinski3244 Жыл бұрын
Wait... it's look like Vue component xD
@wenreloz
@wenreloz Жыл бұрын
Lol. 😂 You're right!
@DecodedFrontend
@DecodedFrontend Жыл бұрын
😬
@skayona
@skayona Жыл бұрын
I was searching for this comment 😅
@sabasojoodi6344
@sabasojoodi6344 Жыл бұрын
Hello please set Persian subtitles for your videos 🙏
@piotrbrokowski4703
@piotrbrokowski4703 Жыл бұрын
like in the blind
@aaronkoller8811
@aaronkoller8811 Жыл бұрын
ExpressionChangedAfterItHasBeenChecked -- Ugh. Less of this is better for everyone!
@DecodedFrontend
@DecodedFrontend Жыл бұрын
haha, totally agree :)
@juraganpisang6982
@juraganpisang6982 Жыл бұрын
goodbye subscribe hell observable
@genyklemberg
@genyklemberg Жыл бұрын
Say bye to newcomers, they are way far away from Angular now)))
@DecodedFrontend
@DecodedFrontend Жыл бұрын
Haha! Nah, things are not so bad :)
@ravijsoni2477
@ravijsoni2477 Жыл бұрын
It's not a big thing. It's built on top of Reactive Extensions Library for Js. Anyone can create their own custom signals. LOL
@МаксимКобєлєв-у1р
@МаксимКобєлєв-у1р Жыл бұрын
Дякую! Слава Україні!
@namename123
@namename123 Жыл бұрын
You can update Angular to 16, even if the current latest version is 15? :O :O :O
@DecodedFrontend
@DecodedFrontend Жыл бұрын
Angular 15 is the last stable version but you can manually define any “next”,”beta”,”release-candidate” version 😊
NgTemplateOutlet in Angular - Everything You Have to Know (2022)
35:15
Decoded Frontend
Рет қаралды 54 М.
Hot vs Cold Observable in RxJs (2021)
15:06
Decoded Frontend
Рет қаралды 28 М.
Support each other🤝
00:31
ISSEI / いっせい
Рет қаралды 81 МЛН
Quilt Challenge, No Skills, Just Luck#Funnyfamily #Partygames #Funny
00:32
Family Games Media
Рет қаралды 55 МЛН
Angular is about to get its most IMPORTANT change in a long time...
10:15
Input Signals in Angular 17.1 - How To Use & Test
14:34
Decoded Frontend
Рет қаралды 31 М.
Angular Signals: What? Why? and How?
27:08
Deborah Kurata
Рет қаралды 69 М.
Why Angular Signals? Write Your First Signal
14:25
Angular University
Рет қаралды 16 М.
Error Handling in Angular - Complete Guide (2022)
41:27
Decoded Frontend
Рет қаралды 71 М.
How To Make Angular Code More Reusable
19:14
Decoded Frontend
Рет қаралды 31 М.
The new DestroyRef Provider in Angular 16 (2023)
11:42
Decoded Frontend
Рет қаралды 13 М.
Why didn't the Angular team just use RxJS instead of Signals?
8:15
Joshua Morony
Рет қаралды 103 М.
32 Reasons WHY TS IS BETTER Than Go
1:09:29
ThePrimeTime
Рет қаралды 262 М.
Support each other🤝
00:31
ISSEI / いっせい
Рет қаралды 81 МЛН