摘要:
今天无意间看到原来 SpringSecurity 自带了 CSRF 防御处理,所以记录下,不得不说 SpringSecurity 功能还是挺强大的,蛮多业务场景都提供了支持。 CSRF 就是跨域请求伪造,英文全称是 Cross Site Request Forgery。这是一种非常常见的 Web 攻 阅读全文
摘要:
长列表网页相信大多数开发者都遇到过,在DOM元素过多的情况下,浏览器渲染会很慢,非常影响用户体验。因此我们会经常采用时间分片、虚拟滚动、分页、上拉加载更多等不同的方式来进行优化,这些方式的思想都是一样的,都是只渲染可见区域,等用户需要时再加载更多的内容。而以上的方式无论哪种,都需要写大量的js或者c 阅读全文
摘要:
一、Jest 和 Mocha 对比选型 至于:前端为什么做单元测试?JavaScript 单元测试的现状,常见单元测试工具:Jest 和 Mocha 的对比,可以看这篇文章了解:https://mp.weixin.qq.com/s/r08NghhRybAwBX9dzcoE1w 从 github st 阅读全文
摘要:
Code Lint是前端工程化中的一个重要环节,它可以帮助我们在部署代码到生产环境之前及时发现错误并纠正它们,也可以规范我们的编码习惯,让团队的代码风格保持统一。 Code Lint的工作原理是借助一些lint工具对代码进行静态分析,并在合适的时机触发校验,提示错误。 在一个团队项目中,代码风格不统 阅读全文
摘要:
一、背景介绍 我们在使用一个比较厉害的框架或者库的时候,经常可以看到 CHANGELOG.md,维护版本更新内容。 这种版本更新内容是非常必要的,如果用户使用了你的轮子,连更新内容都不知道,试问你敢用吗? 那么这些都是怎么写的呢?每次发版都要手动记录吗?显然不是,这些都是靠提条记录生成的。 比如我们 阅读全文
摘要:
一、命名规范 经过社区的不断发展,协定了命名包含以下几种规范: 1、下划线命名:user_name 2、中划线命名:user-name 3、小驼峰命名:userName 4、大驼峰命名:UserName 有了这些规范,开发者们起名字的时候心里就有谱了。而且这些规范目前也被大多数开发者们接受,如果不按 阅读全文
摘要:
一、css 样式覆盖实现 1、核心:通过切换 CSS 选择器的方式实现主题样式的切换 在组件中保留不变的样式,将需要变化的样式进行抽离 提供多种样式,给不同的主题定义一个对应的 CSS 选择器 根据不同主题设置不同的样式 2、如何实现: (1)通过 vuex 存储和控制全局的主题色; (2)在 te 阅读全文
摘要:
localStorage 存储我们经常使用,但是你有没有深入思考下面这些问题呢? (1)localStorage 存储的键值采用什么字符编码 (2)5M 的单位是什么 (3)localStorage 键占不占存储空间 (4)localStorage的键的数量,对写和读性能的影响 (5)写个方法统计一 阅读全文
摘要:
一、stream流导致分页失效的问题 今天发现使用 PageHelper 进行分页时,分页失效了。查了下发现是这个原因,改了之后就正常了,记录一下。代码就不贴了,贴别人的。 1、问题场景:前端分页数据不对,始终只有 pageSize 10 条数据 2、业务代码 public ResultVo<Pag 阅读全文
摘要:
一、为什么需要声明文件 1、创建 src/sum/index.js 文件,内容如下: 这是一个最普通不过的 js 文件,对外暴露 sum() 方法,在 nodejs 中运行。 function sum(a, b) { return a + b } module.exports = sum 2、创建 阅读全文