Joshua MoronyRecently I introduced my new default approach to state management in Angular using Signals and RxJS. This video takes that concept and applies it to challenging situations that are often brought up by people, e.g: loading data from an API, filtering, handling errors and retries, and pagination.
Will this new signals approach ACTUALLY work?Joshua Morony2023-07-12 | Recently I introduced my new default approach to state management in Angular using Signals and RxJS. This video takes that concept and applies it to challenging situations that are often brought up by people, e.g: loading data from an API, filtering, handling errors and retries, and pagination.
0:00 Introduction 0:56 The Set Up 1:26 Loading from an API 1:56 Filtering 3:06 Errors and Retrying 5:39 Pagination 6:31 Conclusion
#angular #signals #rxjs
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyHow to ACTUALLY switch from VS Code to NeovimJoshua Morony2023-09-06 | Vim is notoriously hard to use if you are not familiar with it, but people also go on about how great it is. It took me a few tries, but this video details how I managed to finally make the switch to neovim from VS Code after some failed attempts.
0:00 Introduction 0:58 Step 1: Do you really want this? 1:17 Step 2: Vim Extension 2:14 Step 3: Neovim setup 3:07 Step 4: Neovim Extension 3:35 Step 5: The Terminal 4:23 Step 6: Experiment 4:58 Outro
#neovim #vscode #vim
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyTesting SMART components and SERVICES with Signals and RxJSJoshua Morony2023-08-30 | We've already looked at how to test "dumb" components, now we are going to look at how to test how those components are integrated into the application using smart components and services.
0:00 Introduction 0:51 State management recap 1:31 How do tests fit in? 2:40 Smart component: inputs 4:03 Smart component: outputs 4:52 Testing the service 6:11 Not always this easy
#angular #rxjs #testing
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyI bet you can write an Angular UNIT TEST after this videoJoshua Morony2023-08-23 | Testing is a huge and complex topic, but getting started doesn't have to be - focusing on testing just the inputs and outputs of your dumb components in Angular is a great way to get started with unit testing.
0:00 Introduction 0:52 Testing an Input 3:24 Adding another test 4:23 Testing an Output 6:30 Another test 7:20 Don't worry too much 8:19 Outro
#angular #unittesting
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyWhy does the average app kind of suck?Joshua Morony2023-08-16 | The most common counters I hear to the idea of declarative code are that imperative is a lot simpler and doesn't over complicate things. In this video, I provide some counters to that view point, and why declarative code might actually be the simpler option.
0:00 Introduction 1:09 Things kind of suck 2:33 Declarative is the *easier* option 3:23 An example 3:52 Always start declarative 4:34 Conclusion
#angular #declarative #reactivity
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyThis solved a problem Ive had in Angular for yearsJoshua Morony2023-08-09 | Ideally, we want our data to be reactive right from the source, but sometimes we are just dealing with imperative APIs. RxDB makes it possible to have reactive local storage of data, and provides us with the power of a document based NoSQL database.
This video was sponsored by the RxDB team, but I had complete editorial and creative control over this video (including publishing with negative opinions if I desired).
0:00 Introduction 0:14 The Problem with Storage 0:56 Reactive Storage with RxDB 2:31 Syncing to a Backend 3:22 Conclusion
#angular #rxdb #rxjsThere was a flaw in my Angular mental modelJoshua Morony2023-08-02 | Keeping a reactive/declarative download flow of state in your application can make things a lot more predictable - but placing too much importance on the role of components in my application made maintaining this hard.
0:00 Introduction 1:07 A problem 3:10 The solution 4:16 Conclusion
#angular #rxjs #signals
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyIts OK/NOT OK to subscribe in AngularJoshua Morony2023-07-26 | When coding reactively and declaratively in Angular with RxJS, it's best to avoid subscribing... but why? and when is it OK to break the "rules"?
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
0:00 Introduction 1:06 Upside of Declarative 2:06 Downside of Subscribe 3:21 When can you subscribe? 4:43 When to avoid subscribes? 5:00 Breaking the rules
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyEvery uncommon TypeScript concept that is useful to meJoshua Morony2023-07-19 | I'm no TypeScript wizard but there are a few concepts outside of the basics that often come in useful for me. We will cover things like keyof, generics, unions, non-null assertion, utility types, and more.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
0:00 Introduction 0:22 keyof and in 1:31 Generics 2:09 Unions 2:45 as 4:01 Non-Null Assertion 4:26 Utility Types 5:21 Lookup Types 5:57 Type guards
#angular #typescript
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyMy NEW default for state management in AngularJoshua Morony2023-07-05 | With the introduction of signals, I wanted to find a new default state management pattern I could use that is simple, reactive, declarative and doesn't involve using any 3rd party libraries
0:00 Introduction 0:26 The declarative approach 1:17 No 3rd party libraries 1:57 State and sources 3:12 Updating state 4:07 Alternatives 5:35 Side effects 5:55 Conclusion
#angular #rxjs #signals
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyI spent YEARS optimising my workflow for codingJoshua Morony2023-06-28 | My coding workflow always just felt a bit meh, so I went down a bunch of different rabbit holes to create a workflow that is fast, efficient, and ergonomic. It's still not perfect, but it's a massive improvement on where I started.
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyIs Angular changing TOO much?Joshua Morony2023-06-21 | The Angular team have released yet another RFC detailing the proposal for control flow syntax in template that is similar in style to Svelte. On top of all of the other changes we have seen recently, all of the changes coming to Angular might seem like a bit much.
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyWhen over engineering with Nx in Angular pays off... URLTown Devlog #2Joshua Morony2023-06-14 | For my URLTown project I made heavy use of an Nx monorepo and the library approach. This video explores why I like to use Nx and specifically what benefits it gave me for this project.
Try URLTown (note this is an early alpha): urltown.io
0:00 Introduction 1:29 Using an Nx monorepo 2:42 Using Nx libraries 8:05 Build tooling 9:17 Conclusion
#angular #nx #gamedev
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyTHIS is how to code declaratively in AngularJoshua Morony2023-06-07 | Angular and declarative code are not always the closest of friends, the StateAdapt library aims to make managing state declaratively in Angular much easier.
0:00 Introduction 0:55 What is StateAdapt 1:35 Data sources 2:16 The store 3:03 Adapter 3:49 Isn't this Redux/NgRx? 5:57 Conclusion
#angular #reactivity #stateadapt
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyAngulars missing piece is coming...Joshua Morony2023-05-31 | We can already use signals, but what we have so far is really just a preview of what is coming. When signal based components are released, we will see the full power of the signal approach in Angular applications.
0:00 Introduction 0:34 Signal based components 1:09 Zoneless change detection 2:31 Signal inputs 3:31 Models 4:33 View queries 4:55 Conclusion
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyRxJS isnt complicated enough... lets add State MachinesJoshua Morony2023-05-24 | We take a look at how we can combine state machines using XState with a typical reactive state management flow using RxJS, Angular, and Signals.
0:00 Introduction 0:33 What is a state machine? 1:34 The scenario 1:56 Creating the types 3:04 Creating the state machine 5:48 Using the state machine with RxJS 6:33 Is it worth it?
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyMy most unhinged idea yet... URLtown Devlog #1Joshua Morony2023-05-17 | I'll admit the idea probably sounds ridiculous, but it's actually pretty cool! I set up a 2D game world that you can walk around in and use it as a sort of "home page" for interacting with the web. There are various triggers throughout the world that can be used to launch a set of URLS, and you can use those to navigate between different tasks/workspaces.
0:00 Introduction 0:29 The idea 1:50 How it works 2:12 An example 4:37 Conclusion
#angular #phaser #gamedev
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyThe problem with going full declarative in AngularJoshua Morony2023-05-10 | Declarative code has a lot of great advantages, but to actually have a "fully" declarative codebase is hard if not impossible. This video explores how to make a component more declarative, and why "full" declarative is a problem.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
0:00 Introduction 1:00 Full declarative 2:30 The problem with full declarative 4:00 Partial declarative is pretty good 4:52 Conclusion
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyIs this how we will handle errors reactively with signals in Angular?Joshua Morony2023-05-03 | In this video we investigate the relationship between RxJS and Signals in Angular apps, and specifically a technique we can use to handle errors that is reactive and declarative.
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyWhat most devs dont get about declarative code (I didnt either)Joshua Morony2023-04-26 | Imperative code generally looks easier and more intuitive, whilst declarative code looks confusing and hard to maintain. But this misses the true benefit of declarative code, and the organised structure it can bring to your applications.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
0:00 Introduction 0:22 An example 0:59 The problem 1:40 Why care about declarative? 2:31 Imperative vs Declarative 4:10 Not fully declarative 5:19 Conclusion
#imperative #declarative #rxjs
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyThe first time AI has made me feel 10x more productiveJoshua Morony2023-04-19 | ChatGPT gave me an idea for a game, ChatGPT built the game, and Midjourney generated all of the art assets for me.
This was a fun experiment to see what I could learn about using AI for game development, and revealed something interesting about the interplay between AI and pixel art.
0:00 Introduction 0:42 The setup 1:30 The problem with Midjourney 2:09 Using Midjourney for pixel art 3:58 Benefit of pixel art 4:16 Conclusion
#ai #phaser #chatgpt
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyThe end of Angulars service with a subject approach?Joshua Morony2023-04-12 | A "service with a subject" is one of Angular's most popular state management approaches, but what is this going to look like when signals become available?
0:00 Introduction 0:20 Service with a subject 0:53 Service with a signal 1:58 Async with subjects 3:53 Async with signals 4:37 Combining
#angular #signals #rxjs
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyWhy I decided to switch to the inject() function in AngularJoshua Morony2023-04-05 | Angular 14 gave us the ability to use the inject() function more generally in our projects, including replacing constructor based dependency injection. But is it a good idea to switch to it?
0:00 Introduction 0:54 inject() benefits 1:53 Inheritance 4:05 The problem with inject() 5:36 ConclusionWhy didnt the Angular team just use RxJS instead of Signals?Joshua Morony2023-03-29 | Angular is introducing a new reactive primitive to the framework called "signals", which have been a popular reactive implementation in other frameworks.
But, this begs the question: why didn't they just use BehaviorSubject which is already included in RxJS? This video explores that question.
0:00 Introduction 0:46 Signals are better 1:22 Accessing values 1:50 Derived values 3:47 The diamond problem 5:46 Side effects 7:04 Conclusion
#angular #signals #rxjs
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyGPT-4 just did 85% of my work for me (why you shouldnt use it)Joshua Morony2023-03-22 | GPT-4 turned a task that would have ordinarily taken me around 40 hours into one that would take just a few hours. This is obviously a massive productivity boost, but I think we also need to be cautious about when and where we apply this technology in our every day lives.
0:00 Introduction 0:22 Doing my work 2:48 The problem 3:53 An example 4:25 Why not use AI for coding? 7:13 The human advantage 7:46 Outro
#gpt4 #ai #chatgpt
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyI built an entire app with NO FRAMEWORKS for Web, iOS, and AndroidJoshua Morony2023-03-15 | I came up with a silly idea for an application and built the entire thing inside of an index.html file with just vanilla JavaScript. I used Capacitor to quickly create native iOS and Android applications from the web source code.
0:00 Introduction 0:50 The idea 1:08 The code 2:13 Creating native apps 4:06 Conclusion
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyI used Angulars signals to build an actual appJoshua Morony2023-03-08 | I refactored one of my existing Angular applications that relied heavily on RxJS and observables, to signals. This made me change my opinion on what I think is the likely fate of RxJS integration in Angular.
0:00 Introduction 0:31 The application 0:56 What makes it declarative? 1:42 Refactoring to signals 4:06 What about RxJS? 7:03 Conclusion
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyI turned my trash Angular prototype into a legit app... RMC Devlog #2Joshua Morony2023-03-01 | In the most surprising and unforeseen twist, there is a Part 2 for my DevLog series on building a SaaS startup with Angular!
This one focuses on taking the existing prototype/MVP, throwing it in the trash, and rebuilding a better version from scratch using things like Test Driven Development and software design patterns/principles.
0:00 Introduction 0:59 The new version 2:19 Over engineered code 4:10 Replaying code with streams 7:21 Is all this necessary?
#angular #saas #nx
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyAngular is about to get its most IMPORTANT change in a long time...Joshua Morony2023-02-22 | Angular just released a preview of a prototype for their own implementation of signals as a new reactive primitive for the framework. This will help modernise the framework, improve change detection, and provide a more consolidated learning journey for new Angular developers.
0:00 Introduction 0:31 Signals 1:29 What is the point? 3:17 Reactive/Declarative 4:41 What about RxJS? 7:54 Why it's important 9:26 Conclusion
#angular #signals #rxjs
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyWhy you should try to solve challenging JavaScript problems yourselfJoshua Morony2023-02-15 | Often our first instinct when we run into challenging problems in our projects is to seek out an existing solution or quick fix.
If we work on building the skills to push through these difficult situations, we will grow much more quickly as a developer AND we won't need to rely on others so much.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
0:00 Introduction 1:26 Where do we begin? 2:58 Deep dive 4:48 Building a prototype 6:20 Using the solution 7:48 Getting stuck 8:17 A new solution 11:41 Conclusion
#javascript #svelte #sveltekit
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyThe trick to make any IMPERATIVE code DECLARATIVE instantlyJoshua Morony2023-02-08 | We don't have control over what 3rd party libraries do, and sometimes those libraries are going to have an imperative API. Here's a little trick you can use to keep your codebase declarative, but still utilise those imperative APIs.
0:00 The imperative problem 1:06 The trick 1:20 The declarative solution 2:29 Isn't it still imperative? 3:52 Conclusion
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyThe most compelling reason to learn Angular in 2023Joshua Morony2023-02-01 | It turns out that Angular might be a little more popular than we all think, and the job opportunities for Angular might also be going unnoticed.
This video presents some compelling reasons for why you might want to learn Angular in 2023.
0:00 An important lesson 0:59 Major framework usage 1:51 Angular jobs 3:03 Thoughts 3:40 The REAL reason
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyWhy you actually need RxJS (even if you dont realise it)Joshua Morony2023-01-25 | RxJS provides a way to explicitly handle asynchronous reactivity in your applications. This video explains what that means exactly, the difference to synchronous reactivity, and why the out of the box reactivity solutions Svelte and SolidJS might not be enough.
0:00 Introduction 0:30 RxJS vs Svelte vs SolidJS 1:18 Drama repellent 1:56 The problem 3:17 The killer feature of RxJS 4:50 RxJS example 5:59 Conclusion
#rxjs #reactivity #svelte
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyAngular developers can learn Svelte so fast...Joshua Morony2023-01-18 | It turns out that a lot of the concepts and APIs of Angular and SvelteKit are quite similar from a developer perspective, which means the leap for Angular developers to learn SvelteKit is reasonably small.
This video takes a look at some of the similarities.
Svelte tutorial: https://learn.svelte.dev/tutorial/welcome-to-svelte Tim's blog post: https://timdeschryver.dev/blog/unlocking-reactivity-with-svelte-and-rxjs
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyThe easier way to code Angular appsJoshua Morony2023-01-11 | Ever hear about "declarative" coding or "reactive" coding? These are concepts I struggled to properly understand and appreciate for a long time. This video aims to give a brief explanation that gets right to the heart of what this is all about and why it is beneficial.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
0:00 Introduction 1:38 What is declarative? 3:57 Why observables? 4:24 This is still imperative 6:06 Declarative version 7:54 The benefit 8:23 Imperative is not bad
#ionic #angular
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyCan AI explain the most challenging Angular concept?Joshua Morony2023-01-04 | I set out to make a video explaining the specifics of how dependency injection works in Angular. But then I started to wonder if ChatGPT could do a better job at explaining it than me.
So, now this video is a competition between myself (a Google Developer Expert for Angular) and ChatGPT.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
0:00 Introduction 0:46 The challenge 1:39 (Josh) What is dependency injection? 2:43 (ChatGPT) What is dependency injection? 4:31 Q1 Analysis 4:37 (Josh) What is a token? 5:25 (ChatGPT) What is a token? 7:09 Q2 Analysis 7:36 (Josh) What are injector trees? 9:40 (ChatGPT) What are injector trees? 11:04 Q3 Analysis 11:21 (Josh) Resolution modifiers 12:22 (ChatGPT) Resolution modifiers 15:08 Q4 Analysis 15:25 Final score 16:06 Conclusion
#chatgpt #angular #ai
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyWTF is a HOT observable?Joshua Morony2022-12-28 | There seems to be some kind of important difference between "hot" and "cold" observables, but trying to grasp what that difference is can be confusing. This video aims to make hot observables easier to understand.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
0:00 Introduction 0:31 The Observer Pattern 1:59 Hot Observable (Subject) 4:18 Cold Observable 6:15 Recap 6:33 In RxJS 8:10 Gotchas
#ionic #angular
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyNow AI is DESIGNING my entire app in minutes...Joshua Morony2022-12-21 | The Midjourney AI can generate some pretty impressive mobile app user interface concepts. In this video, we see what is involved in taking one of those concepts and converting it into an actual application.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
0:00 Introduction 0:30 Using Midjourney 1:42 Using the assets 2:39 Creating a colour palette 2:59 Coding the application 4:28 Difficulties 5:20 Thoughts 7:43 Conclusion
#ionic #angular #ai
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyThe easy way to GIT like the prosJoshua Morony2022-12-14 | Git is powerful but it's also hard to mentally picture what is going on and you never quite know if the command you're about to run is going to wreck your whole day.
This video introduced lazygit and the more powerful Git workflows it has allowed me to add into my day-to-day work.
0:00 Introduction 0:41 Lazygit 1:36 Staging files 2:05 Managing branches 2:31 Managing commits 3:40 Super power: Committing hunks 5:00 Super power: Squashing 6:00 Super power: Reordering 7:55 Conclusion
#git #lazygit #angular
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyChatGPT just built my entire app in minutes...Joshua Morony2022-12-07 | I asked ChatGPT how to create a todo app in Angular and it provided me with an unexpectedly accurate answer. With very little input from myself, it was able to provide the code for the entire application.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
0:00 Introduction 1:02 Creating a component 1:35 Creating a form 2:40 Displaying todos 3:24 toggleCompleted and ngClass 4:00 Deleting and final touches 4:58 Something harder? 6:28 ChatGPT vs CoPilot 6:52 Thoughts 8:53 Conclusion
#angular #chatgpt #ai
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyCan Angular apps be cool again?Joshua Morony2022-11-30 | Angular hasn't been "cool" for a long time - it's generally seen as the framework for large enterprise style applications, not for fast moving startups disrupting industries. But, Angular has changed quite a lot lately, which begs the questions... could it ever be "cool" again?
0:00 Introduction 0:27 Old school 0:45 New school 2:30 Real world app 3:34 Routing and Layout 5:08 Dashboard feature 5:48 Data and Services 7:08 Create feature 7:50 Can Angular be cool? 9:41 Conclusion
#angular
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyI built my startup with Angular... RMC Devlog #1Joshua Morony2022-11-23 | I built a new tool with Angular for replaying code snippets, and this video talks about the process of creating and deploying an MVP for that tool.
0:00 Introduction 0:39 What is it? 1:04 The MVP 3:43 Project Structure 5:30 How it works 8:07 Unnecessary feature 9:44 What next? 10:56 Conclusion
#ionic #angular
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyIs reactive code with RxJS too hard to test?Joshua Morony2022-11-16 | In this video, we discuss whether using RxJS and observables to create reactive code makes writing automated tests for that code harder. We look at some specific examples, and show how the observer spy library can be used to make testing observables easier.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyWTF is Zone.js and is it making your app slow?Joshua Morony2022-11-09 | Zone.js is included in every Angular application and it is a critical part of change detection, but it also leads to your application doing way more rendering work than it actually needs to.
In this video, we explore what exactly Zone.js does, why we need it, how we can work around it, and why it might be becoming optional in the future.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
0:00 Introduction 0:27 Component Tree 2:06 What does Zone.js do? 2:59 Default Strategy 4:25 OnPush Strategy 8:16 Async Pipe 10:10 RxAngular
#ionic #angular
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyRxJS made my code 5x shorter... but is it better?Joshua Morony2022-11-02 | I often get comments that the reactive code I create with RxJS is overcomplicated and would be easier without RxJS. This video compares a reactive/declarative solution built with RxJS versus the same feature built imperatively without RXJS.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
0:00 Introduction 1:00 Reactive Approach 2:17 Imperative Approach 4:11 Is Reactive Better? 6:11 Bonus example
#ionic #angular
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyWTF is modern Angular development?Joshua Morony2022-10-26 | What is modern Angular development? This video breaks down the five key areas that I think constitute modern angular development and why I think they are important.
Get a LIFETIME MEMBERSHIP for Ionic Start: ionicstart.com
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyThe secret to understanding piped operators in RxJS (Advanced)Joshua Morony2022-10-19 | In this video, we talk about why considering the subscription flow of RxJS operators upward can make understand what is going on in streams easier.
0:00 Introduction 0:36 Downward flow 2:51 Upward flow 4:25 Nested pipes 5:36 A practical example
#ionic #angular
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyThe hidden gotcha with async in Angular formsJoshua Morony2022-10-12 | In this video, we talk about some of the gotchas and pitfalls to using OnPush Change Detection and Reactive Forms in Angular. This includes dealing with an async validator and changing the status of forms as the result of an asynchronous operation.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
0:00 Introduction 0:41 Recap of OnPush CD 1:33 Async Validator Example 3:19 Solving with the async pipe 4:34 Other problems with async 6:15 Using ChangeDetectorRef 7:17 The trick 10:03 Conclusion
#rxjs #angular
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyKnowing this makes Angular typed forms WAY less awkwardJoshua Morony2022-10-05 | Is the TypeScript compiler complaining about your form values being potentially null or undefined? This video demonstrates the simple solution.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076
0:00 Introduction 0:38 The situation 1:10 nonNullable forms 2:25 getRawValue 4:23 Conclusion
#angular
- More tutorials: eliteionic.com - Follow me on Twitter: twitter.com/joshuamoronyRxJS makes everything easier (Instagram story pausable stream)Joshua Morony2022-09-28 | We take some existing functionality that uses RxJS to displays a stream of photos in a slideshow, and modify it to include the ability to tap to pause just like Instagram stories.
Get weekly content and tips exclusive to my newsletter: https://mobirony.ck.page/4a331b9076