全部文章
共 1306 篇文章
闭包和内存泄漏,这次我终于答上来了
正文 要了解闭包,我们需要先了解词法作用域和作用域链。 词法作用域 在编程语言中,变量和函数的作用域是由其在源代码中的位置决定的。也就是说,在变量和函数被声明的时候其作用域已经确定了。当在函数中访问外部变量时,不论函数运行在哪里,访问的变量始终是其作用域中的那个变量。 例如,我们在这里声明了 变量和 函数,在函数中打印该变量,再将函数导出。如果我们在其他地方引入 并运行,则依旧会打印 。听起来似乎和我们平时开发时的行为是一致的?没错,在...
html2canvas 问题解决汇总
主要介绍了 html2canvas 的基本使用及下载处理,也介绍了项目中使用的一些问题和解决方法,如初始化截图时机、跨域问题、滚动条问题、图片不清晰问题、多行文字错位等。 1\. 基础介绍 Github 地址: 是一个 JavaScript HTML 渲染器,允许在用户浏览器中直接对网页或部分网页进行 。这些截图基于 DOM,因此可能与实际显示效果不完全一致,因为它并不是进行实际的截图,而是根据页面上的信息构建截图。 的主要用途是把网页...
Js的预编译你了解多少呢?
预编译 预编译 是指在程序运行之前,先对程序进行一些处理,例如预处理、编译、链接等,以便提高程序运行效率和减少运行时的错误。 编译的 作用 :提高程序的 效率和稳定性 ,减少程序在运行过程中可能出现的错误,并提高程序的 可维护性 和 可扩展性 。 作用域 作用域是函数身上的属性 \[\[scope\]\] (给js引擎访问的,我们拿不到 隐式属性 ),用于存储函数中的 有效标识符 。 作用域链 作用域是执行期上下文对象的集合,这种集合呈...
NextJs从0-1实现一个博客系统
Nextjs 是什么 是一个基于 React 的开源框架,用于构建生产级别的 React 应用程序。它为开发人员提供了一套丰富的工具和约定,使得创建高性能、可扩展的 Web 应用程序变得更加容易。 相关代码 Next.js 的主要特性: 服务器端渲染 (SSR): 静态站点生成 (SSG): API 路由: 文件系统路由: 图像优化: TypeScript 支持: 自定义服务器: 插件系统: 安装 使用官网推荐的方式安装,执行 ,输入项...
PWA - 微前端项目实践主要目的: 解决资源加载慢问题
背景 平台各个子应用静态资源加载速度慢,用户体验有待提升 主要目的: 解决资源加载慢问题,提升体验 支持应用自启动(原生 体验) 项目使用到的技术栈为: PWA 介绍 简介 PWA 它不是特指某一项技术,而是应用多项技术来改善用户体验的 ,其核心技术包括 , 等,用户体验才是 的核心。 特点: 可靠 即使在网络不稳定甚至断网的环境下,也能瞬间加载并展现 用户体验 快速响应,具有平滑的过渡动画及用户操作的反馈 用户黏性 和 一样,可以被添...
React开发小点:组件为什么需要用标签包裹?return为什么加()?
前言 这次准备介绍关于react的两个新生开发过程中时不时会犯错或者不理解的两个小知识点: React组件为什么需要用标签包裹? 看这样一段代码: 结果报错了 错误 :JSX元素必须被一个 包裹 相信不少同学刚开始学习react的时候都编写过类似的代码,但大家有想过为什么会报这样的错吗?以及这样设计的目的是什么? 不了解也没有关系,接下来让我们一起逐步解密~ 再此之前先来补充 与 的关系 React.createElement与JSX...
一次性完整学完搭建PWA项目
最近在开发一个简单的个人记录网站,技术栈是使用 Vite + Vue3,由于使用的单台服务器,有时候服务器会被限制带宽,所以平时都会比较访问比较慢。所以想实现一个离线应用,而 PWA 应用则是目前最佳方案。 本文涉及知识点如下: PWA 的概念 Service Worker使用 用构建工具搭建 PWA 应用 渐进式 Web 应用(Progressive Web App,PWA)是一个使用 web 平台技术构建的应用程序,但它提供的用户体...
大屏兼容之scale方案
常见方案 vh、vw方案:将所有的尺寸根据设计图换算成vw和vh scale方案:根据设计图的尺寸和当前屏幕的尺寸计算缩放的比例 rem方案:根据设计图和屏幕尺寸计算根元素font size,其他尺寸通过插件换算成rem scale兼容的优缺点 优点:1、代码量极少,只需要处理一次container;2、其他各种图表不用单独进行适配 缺点:1、因为是根据ui进行等比例缩放,所以左右和上下可能会出现白边;2、放大倍数过大会导致图片等失真变...
太神奇了,仅使用彩色字体实现代码高亮
通常情况下,我们要实现代码高亮功能,需要借助复杂的语法高亮库,例如 或 这些库的基本原理是扫描代码,并将关键词包裹一层标签,然后通过 样式改变代码颜色。 但是,这种实现会导致页面非常臃肿,增加了很多额外的标签,就像这样 那么,有没有办法可以在不改变页面 结构的情况下高亮一段代码呢? 其实也是有的,之前写过一篇文章,可以利用 实现纯文本的代码高亮,有兴趣的可以回顾之前这篇文章 虽然叫做“CSS Custom Highlight API”,...