ZHANGYU.dev
All about "JavaScript"
The Principles Behind Front-end Routing
Explanations of the history package in JavaScript, including pushState and replaceState methods, and a brief overview of how React Router uses history for navigation.
前端路由的实现原理
A brief overview of the history library and its usage in React Router, explaining pushState, replaceState, and history event handling.
Yarn 2的Monorepo开发实践
Monorepo manages multiple packages in a single repository, Yarn workspace simplifies package management for monorepos efficiently.
如何使用Proxy拦截Map和Set的操作
Proxy can intercept regular object operations using set and get functions. Custom interceptors can be used to intercept calls to Map or Set methods.
如何利用Proxy实现一个响应式对象
ES6 Proxy creates object proxy with get and set interceptors for observer patterns and dependency tracking.
《你不知道的JavaScript》(上卷)笔记
Description scope, scope lookup, dynamic scope changes, 'this' binding rules, immutability, [[Get]] and [[Put]] operations, and property existence in JavaScript.
60行代码,造一个动画库轮子
Explanation the core method for animating in JavaScript using requestAnimationFrame, followed by a tutorial on creating a basic animation library.
从零搭建一个qiankun微前端demo
Introducing micro-frontends to manage multiple H5 pages efficiently with qiankun, including setup steps for both regular and Umi.js projects.
利用Formik解决表单痛点
Comparison of form handling in jQuery, ant design (for back-end), and Formik in React, with examples and recommendations.
浅谈策略模式和柯里化的使用
Discussion on using strategy pattern to optimize message handling by removing if-else blocks and utilizing currying for function flexibility in development.
Jest 学习笔记(一)
Install Jest and Babel for testing with examples of matchers like toBe, toEqual, not, toContain, toThrow, async testing.
JsSIP踩坑笔记
Implemented page calling with WebRTC using JsSIP, requiring understanding of WebRTC principles including NAT traversal and server roles.
MediaQueryList全解析
MediaQueryList manages media queries and notifies listeners of changes, with properties like matches, media, onchange, and methods like addListener, removeListener, and compatibility notes.
React-Redux 源码阅读笔记
Description a detailed analysis of react-redux, explaining the principles of Provider, connect, and Subscription, offering insights and queries on connectAdvanced functionality.
Redux的中间件applyMiddleware解析
Reading and analyzing Redux source code, particularly impressed by middleware implementation, leading to improved understanding of TypeScript.
Redux源码阅读笔记
Explanations and code snippets of key Redux functionalities such as createStore, combineReducers, bindActionCreators, compose, and applyMiddleware, emphasizing closure usage in the source code.
RxJS学习笔记(七)回压控制
RxJS introduces control operators like throttle, debounce, distinct, ignoreElements, etc., for managing data flow efficiently.
RxJS学习笔记(六)过滤类操作符
Explanation and examples of filtering, taking, and skipping operations in RxJS, such as filter, take, takeLast, takeWhile, takeUntil, skip, skipWhile, skipUntil, first, and last. Talent discussion included.
RxJS学习笔记(五)辅助类操作符
RxJS mathematical operators count, min, max, reduce work after upstream completion. Conditional boolean operators include every, find, findIndex, isEmpty, defaultEmpty.
RxJS学习笔记(四)高阶Observable的处理
Explanation of high-order Observables, including concatAll, mergeAll, zipAll methods for handling nested Observables in RxJS. Personal reflection and upcoming tech event anticipation.
RxJS学习笔记(三)合并类操作符
Merging operators concat, merge, zip, combineLatest; distinct features highlighted for each. Conclude with race, forkJoin, startWith functionalities.
RxJS学习笔记(二)创建类操作符
Operators in RxJS help solve specific application problems by manipulating Observables with functions like create, transform, filter, merge, error handling, and more.
RxJS学习笔记(一)Observable的创建
Discussion on learning RxJS for deeper understanding, creating Observables, handling infinite data stream, completing Observables, error handling, and unsubscribing.
webpack 4 学习笔记
Overview of working with webpack, loader for file and style, plugins, optimization techniques like Tree Shaking and Code Splitting.