Angular Redux - NgRx Angular, NgRx store, NgRx Effects, NgRx selectors

แชร์
ฝัง
  • เผยแพร่เมื่อ 25 พ.ย. 2024

ความคิดเห็น • 174

  • @MonsterlessonsAcademy
    @MonsterlessonsAcademy  2 หลายเดือนก่อน +1

    WATCH NEXT: Angular with NgRx - Building Angular Project From Scratch - th-cam.com/video/vcfZ0EQpYTA/w-d-xo.htmlsi=BptT7eqgflHIoQiQ

  • @ThalisUmobi
    @ThalisUmobi 2 ปีที่แล้ว +14

    Started using Angular with NGRX after watching one of your videos, and after we pass the boilerplate phase, its a life changer! So much control.

  • @rembautimes8808
    @rembautimes8808 11 หลายเดือนก่อน

    Thank you for this amazing tutorial - I have been following your videos for a couple of months already and admire the thought that goes into it. I code for a personal project and tried my hand at ngrx last year and gave up. So I was a bit apprehensive this time round and followed your steps attentively so I wouldn't get lost. And walla - it worked. Without your careful explanation, it would be so easy to get confused for first timers. One modification I did was to wrap the actions within a namespace to make the import easy. ( ChatGPT was offering some suggestions but I think your way is better as the flow is well separated into actions, effects, reducers and selectors )

  • @ParshwaChokshi
    @ParshwaChokshi ปีที่แล้ว +1

    short, simple, and highly informative

  • @marcopolocs
    @marcopolocs 2 ปีที่แล้ว +5

    Gotta say, you have great videos about Angular. The RxJS video was one of the best and only then did I understand the usage of async pipe for example. Can't wait to jump into NgRx as well!

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  2 ปีที่แล้ว

      Then I can recommend you my Angular course 12 hours long where we create a real application and using heavily NgRx and RxJS.
      monsterlessons-academy.com/courses/angular-and-ngrx-building-real-project-from-scratch

  • @nelsonmudanya3015
    @nelsonmudanya3015 2 ปีที่แล้ว

    Great insights, everything ngrx explained in under half an hour

  • @radimsafran8475
    @radimsafran8475 2 ปีที่แล้ว

    Best intro to Ngrx i've seen so far! :)

  • @dayronalfaro9461
    @dayronalfaro9461 ปีที่แล้ว

    It change my mind about NgRx and React Redux because I dont like React too much but with this video I will give a try it seems simple the way of handling data across the application, life saver

  • @okeagi-tuedor5935
    @okeagi-tuedor5935 11 หลายเดือนก่อน

    The best video on the topic. Appreciation.

  • @prafull9821
    @prafull9821 10 หลายเดือนก่อน

    Your videos are very helpful to understand the concept in simple ways

  • @mustufazaki3438
    @mustufazaki3438 29 วันที่ผ่านมา

    Very well explained with great examples

  • @come_and_we_worship
    @come_and_we_worship ปีที่แล้ว

    Excuse me ! Its Clever from East Africa. This is surely amazing

  • @sdev8921
    @sdev8921 ปีที่แล้ว

    18:10 great explanation - this solved my issue

  • @muralir2939
    @muralir2939 ปีที่แล้ว

    I saw many videos but it's never used practically on projects but you rockkkkkk. It's working fine. Fantastic teacher 👏 ❤️

  • @uaplatformacomua
    @uaplatformacomua 9 หลายเดือนก่อน

    Awesome course - much better a lot of I bought before!!!! Thank you.

  • @ghkpr
    @ghkpr 2 ปีที่แล้ว

    thanks, the way you teach is just perfect

  • @mirciulicasm
    @mirciulicasm 2 ปีที่แล้ว +1

    Thank you, very simple and straightforward!

  • @Shinee3e
    @Shinee3e 2 ปีที่แล้ว +4

    Thank you so much for the explanation but i think it would be better to use a normal IDE as it's a bit hard to keep track of your solution structure while watching

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  2 ปีที่แล้ว +1

      You are welcome! You can see a structure in the source code in the description

  • @ma08serrano
    @ma08serrano 2 ปีที่แล้ว

    I have been waiting for this course. Thanks for much.

  • @GezimSadrija
    @GezimSadrija 2 ปีที่แล้ว +1

    Small tip: Use the ngrx-immer lib for Angular. It allows you to write „normal“ code inside your reducers instead of having to write immutibality safe code.

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  2 ปีที่แล้ว +10

      It is of course a choise of every developer himself but I can't agree with ideas of ngrx-immer or immer itself. I write my whole code in javascript or any framework in immutable way. Immer just converts your "normal" not immutable expressions in immutable. So instead of seeing correct immutable code it "simplifies" writing immutable code by hiding how you should write it correctly. So from my perspective it is 1 more layer which can break/be difficult to debug + makes your code not obvious and doesn't teach correct patterns.

  • @nguyencuonguuu
    @nguyencuonguuu ปีที่แล้ว

    Excellently explained! Thank you sir.

  • @onlydev4099
    @onlydev4099 ปีที่แล้ว

    Thank you man, You are a great teacher for me

  • @andromadusnaruto1544
    @andromadusnaruto1544 2 ปีที่แล้ว +2

    Totally awesome tutorial! I've been learning state management recently but I've not been able to fully comprehend the concept, and proper usage, of selectors. However, after watching this, all seems clear now. Just have to do more practice.

  • @thomasbisson8523
    @thomasbisson8523 7 หลายเดือนก่อน

    Very clear thank you. If you could just change your IDE for your demo it would be awesome, there is no file tree so it's quite hard to follow what you are saying + read the code your typing + understanding in which file do you write the code. VSCode is the most popular IDE so it could be a plus

  • @gaetanlavit7330
    @gaetanlavit7330 ปีที่แล้ว

    Thanks, never disappoints

  • @liga_frontend
    @liga_frontend ปีที่แล้ว +2

    Это супер, спасибо за то, что ты делаешь

  • @karthikeyan878
    @karthikeyan878 2 ปีที่แล้ว +2

    Please make a video on below topics
    1. Husky + lint-staged + eslint + prettier configuration with Angular
    2. Feature flag implementation in Angular

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  2 ปีที่แล้ว +1

      Thanks for the ideas. Will add them to the list of future videos.

  • @eagold
    @eagold ปีที่แล้ว

    really amazing tutorial
    I watched a lot of videos, but only after that I started to understand how to use NgRx, maybe watching the previous videos I got a general idea, or maybe your video is so good

  • @Alexanderscodesamples-x4u
    @Alexanderscodesamples-x4u 2 หลายเดือนก่อน +1

    Thank you for the video.

  • @anthonydeville237
    @anthonydeville237 2 ปีที่แล้ว +1

    Thanks for this amazing structured and well-explained tutorial. Helped me a lot in understanding the basic concepts of NgRx! :)

  • @derschratling5604
    @derschratling5604 ปีที่แล้ว

    This is a very helpful Video, thanks a lot!

  • @newen1314
    @newen1314 11 หลายเดือนก่อน

    As a beginner the learning curve was already severe, and now since version 17 it changed again with standalone components...
    I am kinda sad as I was very excited viewing this tutorial about ngrx that was highly recommended by my tutor, maybe I can still watch the whole course and practice with a sample project using version 16?

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  11 หลายเดือนก่อน

      Angular 16 already allows using standalone components. You can still write modules in both versions.

  • @enes98li1
    @enes98li1 ปีที่แล้ว

    You made it look easy, thank you!

  • @dumidupramith3881
    @dumidupramith3881 2 ปีที่แล้ว +2

    can you videos on vs code. its very user friendly and beginers can easily understand. your explanation good but code editor problem for me

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  2 ปีที่แล้ว +1

      Nope because I use the editor which is comfortable for me. It won't be professional with editor that I'm not using. You can always take a source code from the description.

  • @regedam7559
    @regedam7559 2 ปีที่แล้ว

    Thats super useful video for me! Thank you a lot, man

  • @sivasankaran99
    @sivasankaran99 8 หลายเดือนก่อน

    ❤ thank you so much buddy, I'm from India

  • @DeepakNegiSunny
    @DeepakNegiSunny 2 ปีที่แล้ว +1

    Its was very helpful "after watching tutorials on Redux", Can u make a video with more complex real time example covering more aspects of each building block of NRGX

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  2 ปีที่แล้ว

      I heavily cover everything needed to use NgRx in production in my 12 hours Angular course.
      monsterlessons-academy.com/courses/angular-and-ngrx-building-real-project-from-scratch

  • @MrRiseful
    @MrRiseful 4 หลายเดือนก่อน

    Hey, best regards, would you please make a course for NGXS state manager too, please?

  • @stickyamp5996
    @stickyamp5996 3 หลายเดือนก่อน

    I've been hours struggling with a problem, i implemented redux just like you do but when i try to access in a guard(canActivate) to some property " return this.store.select(isAuthSelector).pipe(..." (Knowing that in constructor i fire "this.store.dispatch(Actions.getAuth());" i get an error that says that state is undefined in the selector. And indeed using redux tools i kind of see that state is undefined until my effect which i set to 2 seconds delay completes. I dont understand

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  3 หลายเดือนก่อน +1

      Your stream of data is empty for 2 seconds. You auth guard should wait for the value and not get undefined
      this.store.seelct(...).pipe(filter(value => value !== undefined)) // or whatever you have as a default.

    • @stickyamp5996
      @stickyamp5996 3 หลายเดือนก่อน

      @@MonsterlessonsAcademy Indeed i think what might be happening is that my ngrx store is somehow loading with some delay. I try to fetch data from store in guards or app component constructor/ngOnInit but data is undefined there. But a second later, when my app loads i see in redux tools the state loaded. This is not about the 2 seconds wait in the service sadly :(

    • @stickyamp5996
      @stickyamp5996 3 หลายเดือนก่อน

      Honestly i think that initialState is not actually setting the initial state, but that is not possible, right? right?! :D

  • @Georgii1212
    @Georgii1212 ปีที่แล้ว

    Can you please recommend a video or tutorial explaining REDUX more in detail ? Another question : Angular has 2 way data binding, while, in my understanding, Redux is used in the context of 1 way data binding such as React library. So why, in this case, use Redux with Angular ? Thanks

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  ปีที่แล้ว

      Sure! I already made videos on that
      th-cam.com/video/hMSTO4cpPaQ/w-d-xo.html
      th-cam.com/video/vUEaDo6aXic/w-d-xo.html
      th-cam.com/video/ghmJ1CwiShw/w-d-xo.html

    • @Georgii1212
      @Georgii1212 ปีที่แล้ว

      @@MonsterlessonsAcademy thanks a lot, I have watched the 2 shorter videos so far. So, in my understanding, Redux can be used independently of whether it is a vanilla JS app or React or Angular or Vue app, and no matter if the framework has 2 way data binding (Angular, Vue) or 1 way binding (React). I understood that Redux brings a strict architecture and global state which is useful for big projects with lots of developers. For smaller projects, with few developers, Redux is not necessary, as far as I understand, because Angular has services, React has Context and that is enough for those small projects.

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  ปีที่แล้ว

      @@Georgii1212 it always has 1 way data flow. Other things you wrote correct.

  • @henrikinaski5062
    @henrikinaski5062 ปีที่แล้ว

    Hello. First thanks for such a nice video. Can you please advise me how to build a project from your repo? After cloning it I get only: index & main scripts? Where are the rest? I see on your github repo that there are more files. What I should do?

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  ปีที่แล้ว

      npm install then npm start. I don't know why you get just 2 files.

  • @andrewrayanit
    @andrewrayanit ปีที่แล้ว

    Great work.

  • @dprggrmr
    @dprggrmr 2 ปีที่แล้ว

    Is this a real human or some kindve new ai human? Great video!

  • @qwerty123246
    @qwerty123246 ปีที่แล้ว

    Nice job buddy!
    By the way, how can I combine multiple reducers for a single feature (I mean in StoreModule().forFeature() ) ? Is it even possible? Or I can combine MULTIPLE reducers only in StoreModule.forRoot() method? Thanks

  • @SuperMati25
    @SuperMati25 ปีที่แล้ว

    Great video, but why you didn't continue with update and delete.

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  ปีที่แล้ว

      This video is just to bring you understanding of NgRx. If you want to learn it deeper on the real example you can check my full course about Angular and NgRx.
      monsterlessons-academy.com/courses/angular-and-ngrx-building-real-project-from-scratch

  • @dua_aur_dawa
    @dua_aur_dawa 2 ปีที่แล้ว

    awesome tutorial you made thing so easy Thanks alot

  • @f3t312
    @f3t312 ปีที่แล้ว

    Great work, thanks!

  • @ninearc2207
    @ninearc2207 ปีที่แล้ว

    Thank you for your video. 🙂

  • @ethelbertdickson
    @ethelbertdickson 2 ปีที่แล้ว

    Thanks so much for this video. It makes all the difference. Please what IDE were you using?

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  2 ปีที่แล้ว

      You are welcome. It's Vim here is my video about it.
      th-cam.com/video/YrLiugDhCuk/w-d-xo.html

  • @elhadjiomardione9425
    @elhadjiomardione9425 2 ปีที่แล้ว

    Great tutorial thanks

  • @priyamganguly
    @priyamganguly ปีที่แล้ว

    I followed the course all throughout and wrote the codes exactly as shown here. But there's no output on the browser. Also, in the Redux tool of the browser dev tools, I don't see any state changes. It always remains null and empty. Surprisingly, there's no possible error in my code as it gets compiled successfully every time. So what am I doing wrong? Any suggestions, please?

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  ปีที่แล้ว

      You can download the source code of the video and check if it works there.

  • @MarfTaylor
    @MarfTaylor ปีที่แล้ว

    do I need to make more than once the onSuccess and onFailure if I have more than one action ?

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  ปีที่แล้ว

      typically you create 3 actions for every async stuff that you do

    • @MarfTaylor
      @MarfTaylor ปีที่แล้ว

      yes but isn't that pattern prepetitive sir ?@@MonsterlessonsAcademy

  • @mohammadfarhadi9407
    @mohammadfarhadi9407 2 ปีที่แล้ว

    It was awesome!
    thank you for sharing your knowledge for free.
    Did you cover everything in the todo project?

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  2 ปีที่แล้ว

      I covered most of ngrx stuff but there are different advanced topics which you might learn later.

  • @davebudah
    @davebudah 2 ปีที่แล้ว

    Thanks again for this one.

  • @L-Lesiv
    @L-Lesiv ปีที่แล้ว

    So is it not possible to simply use service and then use action inside it or in subscribe without using effect?

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  ปีที่แล้ว +1

      You can but then it is not different to publish/subscribe pattern which has lots of problems. Redux is a single flow of data.

  • @scratchercatcher6760
    @scratchercatcher6760 2 ปีที่แล้ว

    Thank you, you explained it very well. Can you make a video about unit test the same app please?

  • @ՍերինեԲաղդասարյան
    @ՍերինեԲաղդասարյան 11 วันที่ผ่านมา

    The Best

  • @danilo_teixeira
    @danilo_teixeira ปีที่แล้ว

    How could I keep the store data after refreshing the page? When I do refresh, I'm losing the data

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  ปีที่แล้ว +1

      NgRx and all javascript stuff stores everything in memory. You can either use localstorage to store data between reloads or rebuild state with API calls and data.

  • @ronniea7x
    @ronniea7x 2 ปีที่แล้ว

    awesome tutorial :D you are the best

  • @joelmilan7835
    @joelmilan7835 ปีที่แล้ว

    Hello, please what IDE do you make use of?

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  ปีที่แล้ว

      Hi, it's Vim. Here are my videos about it
      th-cam.com/video/j6uqOvTRq6I/w-d-xo.html
      th-cam.com/video/YrLiugDhCuk/w-d-xo.html
      th-cam.com/video/Xa4aOOB7XZo/w-d-xo.html

  • @danilo_teixeira
    @danilo_teixeira ปีที่แล้ว

    Do I need meta-reducers to make it work?

  • @hamza201183
    @hamza201183 2 ปีที่แล้ว

    Hi Oleksandr, why didn't you start to promote your new Angular course yet? :)

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  2 ปีที่แล้ว +1

      I will release the announcement next Tuesday :)

    • @hamza201183
      @hamza201183 2 ปีที่แล้ว

      @@MonsterlessonsAcademy Well I didn't wait for the announcement... :D

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  2 ปีที่แล้ว +1

      @@hamza201183 I'm happy to hear that! I put 5 months effort in the course.

  • @andrewparker7603
    @andrewparker7603 ปีที่แล้ว

    This is great!

  • @michelchaghoury9629
    @michelchaghoury9629 2 ปีที่แล้ว

    please we need mini projects with angular, ngrx, reactive api calls (CRUD) and thank you

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  2 ปีที่แล้ว +1

      I have a full 12 hours Angular course which covers all this in depth and teaches you on the real project
      monsterlessons-academy.com/courses/angular-and-ngrx-building-real-project-from-scratch

  • @oBezBasKa
    @oBezBasKa 2 ปีที่แล้ว

    What about if I have some request with pagination query param like (page, limit) ?

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  2 ปีที่แล้ว +1

      you just pass needed params in actions. We make such things in my full course with NgRx
      monsterlessons-academy.com/courses/angular-and-ngrx-building-real-project-from-scratch

    • @oBezBasKa
      @oBezBasKa 2 ปีที่แล้ว

      @@MonsterlessonsAcademy yes, i found, thx

  • @maxympishchuk8242
    @maxympishchuk8242 2 ปีที่แล้ว

    Can you please tell which environment and font do you use in that video? Btw the tutorial was great)

  • @vadymhres8295
    @vadymhres8295 2 ปีที่แล้ว

    nice, thank you so much !

  • @maximl4851
    @maximl4851 2 ปีที่แล้ว

    How can I check my errorSelector, I mean how to change http status and replace response body

  • @daviddonovan425
    @daviddonovan425 2 ปีที่แล้ว

    Posts is a confusing name for a component... Maybe Articles? Anyway... Very informative!

  • @wealthiduwe2817
    @wealthiduwe2817 2 ปีที่แล้ว

    Thanks so much!!!

  • @sourabhpandit6724
    @sourabhpandit6724 4 หลายเดือนก่อน

    simple awesome

  • @Tillbert99
    @Tillbert99 2 หลายเดือนก่อน

    Danke!

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  2 หลายเดือนก่อน

      Thank you so much for your support. It means a lot to me!

  • @xxfaironxx
    @xxfaironxx ปีที่แล้ว

    10/10

  • @avalanche322
    @avalanche322 2 ปีที่แล้ว

    Cool!

  • @eagold
    @eagold ปีที่แล้ว

    where is animations video?

  • @YusupOzdoyev
    @YusupOzdoyev 6 หลายเดือนก่อน

    thank's!!!

  • @expertreviews1112
    @expertreviews1112 10 หลายเดือนก่อน

    That was overwhelming tbh

  • @johnparungao1354
    @johnparungao1354 ปีที่แล้ว

    Damn, coming from Vuex state management, this sht is confusing to understand

  • @yusufs_solos
    @yusufs_solos 9 หลายเดือนก่อน

    Bro next time use VSC we can't understand what you doing

  • @sdsd-ec8rw
    @sdsd-ec8rw ปีที่แล้ว +1

    couldn't watch the video. large font, no tabs so it's not clear which file is open and edited at the moment. Sorry but this is dislike

  • @RayZde
    @RayZde ปีที่แล้ว

    That's very complicated.

  • @venc01
    @venc01 8 หลายเดือนก่อน

    Great, now I hate Angular even more.

  • @andreip.8321
    @andreip.8321 8 หลายเดือนก่อน +1

    That's a pretty nice explanation of NgRx, but I've always wondered... are you part of a cult or something that doesn't allow you to use IDEs, like ANY NORMAL DEV out there? Just asking, because it's pretty annoying watching these tutorials using...whatever tool you're using. Just saying... it's 2024. Other than this, great tutorials, but again, it's painful to watch using whatever useless editor you're using.

  • @domjanzsoo
    @domjanzsoo ปีที่แล้ว

    Trying something similar but instead of a boolean posts.isLoading I have a string dashboard.title state property. For some reason this method this.title$ = this.store.pipe(select(titleSelector)); gives me an object. It looks like it just stays as an Observable object, because it never gets the title value from the selector. Any idea what can be wrong?

    • @MonsterlessonsAcademy
      @MonsterlessonsAcademy  ปีที่แล้ว

      Check your state in redux devtools. if it is correct the problem is in selector.

  • @MrgnUTube
    @MrgnUTube 4 หลายเดือนก่อน

    NOPE.

  • @karthicks859
    @karthicks859 ปีที่แล้ว

    To be honest It's hard to remember+implement all these stuff while working.Learning curve is hard for anyone! THIS technology surely diminish