摘要:
前言 在浏览器中表单元素天然支持focus和blur事件,这两个事件在开发过程中出现的频率还是挺高的,前端开发者也都比较熟悉,在这里特意总结一下。 触发场景 鼠标点击 键盘tab键 直接调用dom的focus,blur方法 使用tabIndex使非表单元素支持focus和blur事件 给一个普通的d 阅读全文
摘要:
前言 在做个人项目的时候遇到一个需求,要在编完代码之后代码提交之前生成一个预览文件,手动执行脚本难免会遗漏。然后就想到之前在工作中使用过的husky,正好拿过来用一用; husky是什么? husky是一个给git增加 hooks 工具 打开文档发现husky的版本已经更新到8.x了,这时候就照着新 阅读全文
摘要:
1.纯css方案 使用user-select: none实现,效果很好,缺点是不能用鼠标拖动选中了。 <div>少时诵诗书所所所所所所所</div> <style> div{ user-select: none; } </style> 2.使用js实现-mousedown 在mousedown事件上 阅读全文
![禁止双击文字选中](https://img2022.cnblogs.com/blog/925025/202209/925025-20220916155916928-1554546983.png)
摘要:
平时想写一个简单的react demo,需要使用create-react-app来初始一个项目,或者使用其他脚手架初始项目,属实有些小题大做;而使用vue的时候,新建一个html文件,然后外链vue包文件,立马就能像使用jquery一样开始写vue组件,非常的方便; 那么是否可以在html中直接引用 阅读全文
![浏览器直接运行react](https://img2022.cnblogs.com/blog/925025/202205/925025-20220506113535644-1383342549.png)
摘要:
虽然webpack5已经发布两年了,然而公司内部还有许多个项目仍然使用的是webpack4,最近一个小需求却导致打包结果发生了很大变化,于是重新研究了下splitChunks配置。 默认配置 splitChunks: { chunks: 'async', minSize: 30000, maxSiz 阅读全文
摘要:
es6模块和commonjs模块都属于js这门语言的模块规范,commonjs服务于nodejs,es6服务于浏览器并且在nodejs中的支持度越来越高,那么目前阶段这两者有什么不同呢? 相关代码地址:https://github.com/blank-x/blog-code/tree/main/1- 阅读全文
摘要:
data 中的数据是如何处理的? 每一次实例化一个组件,都会调用 initData 然后调用 observe 方法,observe 方法调用了 new Observer(value), 并且返回 __ob__ 。 在 new Observer 中做了两件事: 把当前实例挂载到数据的__ob__属性上 阅读全文
摘要:
对json对象遍历我们一般使用for in循环,或者Object.keys + 数组方法。在接触js以来听到过一种说法: for in 遍历顺序是不可靠的 但是在实际开发中for in 循环也是按照其键值对的排列先后被遍历,直到遇见了下面的数据: const data = { "11": 11, " 阅读全文
摘要:
在使用express-session的时候,使用mongodb存储session,过期的session可以自动被删除,不需要代码中处理。 通过查看源代码发现,在connect-mongo中使用设置索引的方式来自动删除过期的session。 // 初始化connect-mongo的时候 autoRem 阅读全文
摘要:
writeHead response.writeHead(statusCode[, statusMessage][, headers]) statusMessage 好像没什么用,一般用不到。 返回对 ServerResponse 的引用,以便可以链式调用。 const body = 'hello 阅读全文