- 博客(8)
- 收藏
- 关注
原创 【Next服务端渲染学习-SSR】
官网文档使用浏览器api,或者dom事件,或者像客户端渲染时所用的useState,useEffect需要写入在客户端组件当中(也就是说这部分的内容逻辑必须要单独起一个文件来写,不能一个文件写到底了)客户端组件可以作为服务端组件的子组件,服务端父组件可以通过props将值传递给客户端子组件。但是服务端组件不能显示的作为客户端的子组件,只能以children的方式传递到客户端组件中,并且无法传递值给服务端子组件。
2025-05-28 17:54:23
734
原创 【强缓存与协商缓存】
浏览器在重新部署后仍使用旧版本的缓存资源,导致DOM中的data属性值与CSS文件中的不一致。问题主要涉及强缓存和协商缓存机制。强缓存通过Cache-Control和Expires头控制,而协商缓存则通过ETag和Last-Modified头实现。在问题中,由于ETag的弱类型导致协商缓存未能正确识别资源更新,浏览器继续使用本地缓存。解决方案建议对无哈希后缀的资源禁用缓存,确保每次请求都获取最新资源,而对带哈希后缀的资源则依赖哈希值的变化来更新缓存。
2025-05-18 17:56:11
536
原创 【Webpack构建原理与设计理念-浅显理解】
Webpack的设计原理基于模块化构建和事件驱动的机制。其核心流程包括获取配置、事件驱动挂载、开始构建、编译模块、借助插件和加载器处理模块,以及构建优化。Webpack通过webpack.config.js获取配置,并返回一个compiler对象,用于启动构建流程。构建过程中,Webpack利用tapable库实现事件驱动,通过hooks挂载插件和加载器,确保在正确的时机执行相应的任务。构建流程包括模块编译、依赖处理、代码分割、Tree Shaking等优化操作。Webpack的设计理念是通过发布订阅模式,
2025-05-15 16:57:52
788
原创 js数组方法使用
数组方法妙用concat用concat打平二维数组concat特性:不改变原数组参数:一到多个作用:参数是数组,打平(一维)拼接;参数是类数组或其它类型的值,直接拼接。巧用:用concat打平二维数组const test = (arr)=> { for(let i = 0 ; i < arr.length; i++){ if(Array.isArray(arr[i])){ return Array.prototype.concat.
2022-08-22 23:06:36
79
原创 js当中的toString使用问题
js中的数值直接调用toString方法报错,浮点数使用toString()方法的结果并衍生生出浮点数精度丢失的问题
2022-08-21 12:45:38
586
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人