Implementing the Missing "resolve" Feature of the Angular 2 Router
A guide to implementing a custom 'resolve' feature for the deprecated Angular 2 router to preload data before component rendering.
Blog.mgechev.com is the personal blog of Minko Gechev, Lead for Web Frameworks at Google and a widely recognized engineer in the JavaScript and Angular ecosystem. Minko writes about Angular, JavaScript, TypeScript, frontend architecture, web performance, and AI assisted development, mixing clear code examples with insights gained from building frameworks at scale. He is the creator of influential open source projects and has been awarded by Google and the President of Bulgaria for the impact of his contributions. His articles often explore advanced topics such as LLM powered development, predictive prefetching, reactive rendering, framework design, and large scale JavaScript tooling. Beyond engineering, he shares lessons from giving over a hundred conference talks and from leading major web initiatives at Google. Minko is also the co founder of Rhyme.com, an EdTech platform offering hands on technical training. He built the platform and engineering team starting in 2015. In 2018 Rhyme became Coursera’s first acquisition, marking a significant milestone in his career.
103 articles from this blog
A guide to implementing a custom 'resolve' feature for the deprecated Angular 2 router to preload data before component rendering.
Exploring scalable architecture for single-page applications, covering state management with Redux and asynchronous communication using RxJS.
How to fix the 'Duplicate identifier' TypeScript error by managing ambient type definitions and understanding @types.
Exploring the development of ng2lint, a configurable static code analyzer for Angular 2 and TypeScript projects to enforce style guides and best practices.
Explores using static code analysis to enforce Angular 2 best practices from a community-driven style guide, covering patterns and benefits.
Explains the difference between ViewChildren and ContentChildren in Angular, including how to access them and the viewProviders property.
Explains how to dynamically configure Angular's router to load routes from a remote service, addressing runtime registration and navigation.
A developer builds a prototype hot loader for Angular 2, inspired by React, to update components without a full page refresh.
Explains how to implement lazy loading for route components in Angular 2 to improve application performance by reducing initial bundle size.
Exploring Aspect-Oriented Programming in JavaScript to handle cross-cutting concerns like logging, using the aspect.js library.
An in-depth look at implementing the Store and handling network communication in the Flux architecture, using Observables and design patterns.
Explains how to use TypeScript with JSX for better type safety and tooling in React development, addressing refactoring and error prevention.
An in-depth series exploring the Flux architecture, its components, and practical implementation beyond basic tutorials.
Explores advanced immutable data structures in AngularJS for optimizing the $digest loop and improving change detection performance.
Part 2 of optimizing AngularJS performance with immutable data, using Benchpress for detailed profiling of execution and garbage collection times.
A developer's first impressions of Angular 2.0, exploring its TypeScript foundation, design patterns, and initial features.
Learn AngularJS core concepts by building a simplified, 200-line educational implementation. Understand directives, controllers, and services.
Explains how to persist ReactJS component state using localStorage to maintain state across browser sessions, with code examples.
Explains how to use immutable data structures from Immutable.js to improve AngularJS application performance by optimizing change detection.
Exploring methods for processing binary protocols in client-side JavaScript, from XMLHttpRequest to modern binary WebSockets with a proxy.