框架
日常开发中都需要编写一些通用的组件来给多个模块复用,为了提高组件的稳定性和可靠性,通常需要编写一些测试用例来保证组件在开发阶段能的质量和确保功能一致性。
Nextjs浏览器控制台警告:Warning: Extra attributes from the server: mpa-version,mpa-extension-id,今天启动项目时,发现控制台突然多了个警告。
nextjs发布到CDN报错,访问图片报错Url parameter not allowed,为了提高页面访问速度,通常会把文件上传到CDN,为了提高页面访问速度,通常会把文件上传到CDN,nextjs提供了一个配置 assetPrefix 来实现,我们只需要在 next.config.js 里面配置 assetPrefix 即可。
为了使系统方便维护,我们会在项目中引入 Typescript,通过使用 TypeScript,可以更好地定义对象和函数的类型,减少错误,提高代码的可读性和可维护性。然而大部分新手刚接触 Typescript 或者 React ,不知道如何声明类组件,函数组件,Props等。接下来让我们通过例子来走进 React 和 Typescript 世界。
Vue3 使用 Proxy 来实现响应式系统,Proxy 可以允许我们定义对象或者函数的自定义行为,例如属性查找,赋值,枚举,函数调用等。Vue3 借助 Proxy 的 handler 拦截操作,收集依赖,数据变更触发依赖更新,实现了响应系统核心。
我们都知道React提供了一个 dangerouslySetInnerHTML 属性来让我们展示html文本成DOM节点。那么如果需要执行带script标签的html文本,可能结果不会如你所愿。
为了可以实现运行时可中断,恢复,停止等操作,react fiber新的底层协调算法引入的一个新的数据结构(双向链表),基于fiber新的协调算法叫做fiber reconciler,在渲染和更新过程,使用递归来遍历。
SSR指的是服务端渲染,直出html到客户端,减少首屏白屏时间,这里不对SSR过多说明,有兴趣自行查找。
React18引入一个新的API,ReactDOM.createRoot,原先的 ReactDOM.render 会被标记为弃用
在写函数式组件的时候,为了避免无效的渲染,可以通过 React.memo 函数来实现,类似于 React.PureCompnent 的功能,对 props 进行浅比较
你可以把 useMemo 作为性能优化的手段,但不要把它当成语义上的保证。将来,React 可能会选择“遗忘”以前的一些 memoized 值,并在下次渲染时重新计算它们,比如为离屏组件释放内存。
在深入了解react hooks原理Ⅰ实现了useState,遗留了两个问题 使用多个 useState 是否能够符合预期 useEffect 是怎么实现的