修身养性,知行合一

  • 首页
  • 爱码
    • 系统
    • 数据库
    • JavaScript
    • CSharp
    • Python
  • 生活
    • 文化
    • 美食
  • 杂谈
  • 关于
JavaScript
JavaScript

小技巧系列 - JS判断图片是否已经缓存

网站图片十分常用,尽可能让图片使用缓存,是一个提高页面效率的常见方法。那么页面如何判断图片是否已经缓存了呢?很简单,通过 HTMLImageElement.complete 属性就可以做到。 实现方式 const img = new Image(); img.src = 'xxx'; // 图片原地址 if (img.complete){ // 已经加载 } else { // 还没加载 } 通过这种方式,可以快速判断图片是否已经缓存,并可以结合这个方法进行不同的后续处理。 原理 利用 HTML…

2022年2月14日 0条评论 481点热度 0人点赞 jeremyjone 阅读全文
Vue

如何写一个组件级别的全局状态管理

起因 最近有人给我的 jz-gantt 提了个bug,说页面中放多个 gantt 组件会出现异常。我复现了一下,还真是。原因呢,也很简单,之前的升级小记中也记录过,就是因为 全局变量 冲突,当时没有意识到这会成为一个问题。这个之前还没考虑到,也是因为刚开始用 vue3,以为它会自动管理全局变量,但是,并不是~ 因为挂载多个组件,导致变量名重叠,最后只有最后一个挂载的组件中的变量会生效,这就导致了多个组件出现了异常情况。简单来说,之前那种全局变量的方法是真正的全局变量,它适合用在项目中,而并不适合用在组件中。 修改思…

2021年12月30日 0条评论 547点热度 0人点赞 jeremyjone 阅读全文
Vue

Vue.js3 + Vite + TypeScript 从0搭建工程化项目模板

开始之前 万字长文,爆肝三天,一点一点把项目又搭了一遍,还找了很多文档,链接已经贴在相关内容中了,方便大家查看,同时也写了一些常见坑的填坑方式。创作不易,如果喜欢,请点个赞吧~ 同时,原文已经存放在我的文档中,地址 -> 这里。 Vue.js3 + Vite + TypeScript 从0搭建工程化项目模板 为简化每次初始化项目,最好的方法就是搭建一个项目模板,这样每次初始化的时候直接拉取就好,不用再一个一个进行配置,省去了大量时间。 该内容模板已经在 Github,如果需要,可以直接下载使用。具体使用方法可…

2021年11月9日 2条评论 3292点热度 2人点赞 jeremyjone 阅读全文
Vue

vue3上手 -- 更新 jz-gantt 小记

开始之前 vue3 虽然已经出了快1年了,也没怎么好好用过,就是刚出来的时候尝了个鲜。然后紧跟着就一直在鼓捣 .net 的东西,前阵子搞了搞 docker,最近终于有时间正儿八经的用一下 vue3 了。哪里上手呢,之前有人问我有没有升级 jz-gantt 组件的计划。正好赶着这段时间连学习带升级,把它搞了。 什么是 jz-gantt 具体的甘特组件,之前写过 文章,同时也可以到 GitHub 查看源码,放了两个版本。 文档我也更新了,在 这里。 欢迎有需要的朋友们点个 star,也欢迎提 issue。 升级小记 v…

2021年9月26日 2条评论 1361点热度 2人点赞 jeremyjone 阅读全文
Vue

Vue3 动态添加图片路径

开始之前 之前在 vue2 中经常使用类似方法,直接 reuqire(<url>) 即可。今天在写 vue3 的内容时,遇到了,习惯性的填上了这个,结果发现不行~ 都怪我,确实还没完整的看上一遍 vite 的内容,就是一直使用而已。这下好了,赶紧一番搜索翻阅文档,vite 和 webpack 的核心差别还是挺大的,在 vite 中并没有这样的包。于是就有了下面的操作。 解决方法 对于所有动态拼接的路径,只要不是纯字符串的,就需要使用下面的方式。 Glob 在 vite 中,提供了 Glob 导入功能,可…

2021年6月24日 0条评论 1894点热度 0人点赞 jeremyjone 阅读全文
JavaScript

JS 中字符串 replace 的高级用法

缘起 说来惭愧,一直用 replace 替换,却一直没注意第二个参数可以放函数,也一直没用到。今天在做 excel 下载时发现一直报表名的错误,发现名字超长了,也才发现原来 excel 表名最长好像到31个字符。 想着简单,把中间截取一下替换成 ~ 就可以了。然后发现 replace 不能一次性满足我,虽然用两次可以解决,但是不能忍,于是去 文档 恶补了一下。 基本用法 基本用法我们天天用,没啥说的: var s = 'abcde'; s = s.replace(/bc/, '~�…

2021年4月2日 1条评论 1782点热度 1人点赞 jeremyjone 阅读全文
JavaScript

真丶深入理解JavaScript异步编程(最终章):手撸 Promise

写在前面 已经写了3篇前置内容了,主要是理解JS中的异步编程,异步的实现、以及异步的原理。今天内容较长,从最简单、最基本的内容入手,一点一点手撸一个简易的 Promise,巩固之前理解的异步原理,这才是我的目标。 手写 Promise 了解 Promise,从手动重写一个简易版的开始。 最简易的 Promise 最基本的 Promise 的样子是这样的: new Promise((resolve, reject) => {}); 那么照猫画虎写一个: class MyPromise { constructor…

2020年12月18日 0条评论 789点热度 1人点赞 jeremyjone 阅读全文
JavaScript

真丶深入理解JavaScript异步编程(三):async / await

这一篇内容比较短,介绍新增的语法糖。其实也不算新了。。。 async / await 这两个写法是 ES6 新加的特性,这让我们的代码更加简单明了。但是这并不是什么新技术,只是一个语法糖而已,它的本质还是 Promise。 await 我个人理解,await 是这两个语法糖的重点。它具有以下特点: 它后面需要跟一个 Promise,如果是一个值,则会自动包裹成一个 Promise 它需要在异步函数内部使用,也就是函数必须使用 async 修饰。 await 相当于前面提到过的 then,使用 await 等待其后 …

2020年12月17日 0条评论 1177点热度 0人点赞 jeremyjone 阅读全文
JavaScript

真丶深入理解JavaScript异步编程(二):Promise 原理

有了前文的基础,我们深入剖析一下 Promise 的原理。 Promise 由于 JS 的单线程和任务队列,造成了很多函数嵌套,当这种嵌套激增,就会造成所谓的 回调地狱,这是我们深恶痛绝的。 创建一个 Promise 基于几方面原因,JS 催生了 Promise,它解决了很多问题。先看用法: new Promise( ( resolve, // 成功状态回调 reject // 失败状态回调 ) => { // 执行体 } ); 这是一个最基本的创建一个 Promise 的方式。 Promise 的状态 Pr…

2020年12月16日 0条评论 683点热度 0人点赞 jeremyjone 阅读全文
JavaScript

真丶深入理解JavaScript异步编程(一):异步

异步的由来与实现 JS 在设计之初就是单线程的,所以本质上并不存在异步编程。在经过不断的进化和改良之后,现在所谓的异步编程也只是利用任务队列来改变事件的触发顺序,从而在效果上达到异步。 一个生活中的例子 好比我们要吃饭,那就要先做饭,假设焖米饭需要 20 分钟,炒个菜需要 10 分钟。 如果我们一步一步来(全部我们自己动手): 1、焖米饭(20 分钟) 2、炒菜(10 分钟) 3、吃饭 很显然,我们需要 30 分钟才可以吃到饭。 如何加快速度呢?我们可以使用电饭锅来焖米饭。那现在就是: 1、焖米饭(电饭锅用时 20…

2020年12月15日 0条评论 932点热度 0人点赞 jeremyjone 阅读全文
1234

jeremyjone

这个人很懒,什么都没留下

最新 热点 随机
最新 热点 随机
js 问号链以及双问号的打包问题 关于 git unsafe repository 的错误 美化 Windows Terminal(升级版) win10 修改本地账户名称 小技巧系列 - JS判断图片是否已经缓存 推荐一波起始页吧
Vim使用指南 css实现跳动的文字 IIS Express 通过IP访问的方法和坑 双十一 京东养红包攻略 VS Code配置C&C++,亲测 JavaScript数字和字符互转
最近评论
畅聊科技 发布于 1 天前(07月01日) 博主写的是直接粘贴图片,但是图片不在单元格内的。我改造之后,直接读取单元格内的图片。 参考地址:h...
BruceQiu 发布于 2 周前(06月17日) 上海.net程序员一个,半导体行业。可以交个朋友交流技术吗?周围虽然都是.net,但是都是带的同事,...
large-C 发布于 3 个月前(03月26日) Parsing error: "parserOptions.project" h...
FateDong 发布于 6 个月前(01月12日) 这个怎么设置访问路径
tyty 发布于 8 个月前(11月02日) 大佬能发一下ts版的示例吗 :lol:
分类
  • ASP.NET
  • CSharp
  • Git
  • JavaScript
  • Python
  • Vue
  • 前端
  • 小程序
  • 工具
  • 建站
  • 数据库
  • 文化
  • 服务器
  • 杂谈
  • 爱码
  • 生活
  • 系统
归档
标签聚合
IdentityServer canvas mysql JavaScript csharp .net windows vue

(っ•̀ω•́)っ✎⁾⁾ 开心每一天

COPYRIGHT © 2021 jeremyjone.com. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

京ICP备19012859号-1

京公网安备 11010802028585号