使用 postMessage 跨 iframe 通信

简介

window.postMessage() 方法可以安全地实现跨源通信。

通常两个不同页面中的脚本想要通信,必须满足同源策略(协议/主机/端口号相同)才可以相互通信

window.postMessage() 方法提供了一种受控机制来规避此限制,只要正确的使用,这种方法就很安全。

阅读全文

基于 Rush 实现 Monorepo 的入门体验

本文参考官方文档学习后总结了关于 Monorepo + Rush + PNPM 的入门实践,以更容易理解的方式组织了文章结构,如果你也需要构建一个大型多项目仓库,不妨可以看看本文

  • 本文不对 Monorepo 做介绍
阅读全文

快速搭建Springboot进行CRUD

如果你想要

  • 需要快速搭建个后台进行增删改查,而暂时不想要系统学习Spring框架
  • 前端开发想要更好的模拟后端数据的返回
  • 大学生期末大作业的后台CRUD

通过学习此文,你可以

  • 快速搭建Springboot进行CRUD

为什么选择Springboot

  • 传统SSM需要通过一些配置才能跑起来,而Springboot几乎开箱即用
阅读全文

Git Hooks

如果您有以下需求,那么你可以了解下 Git Hooks,也许能解决您的问题。

  • 开发完项目,在提交到仓库前,需要先跑一下测试用例,格式化下代码,ESLint 检查一下… 你希望所有人在每次提交前都要执行这些操作。可是人为往往会有批漏,所以这种事情还是交给程序比较好。
阅读全文

JavaScript实现精准倒计时

当需要实现精准倒计时,但setTimerout和setInterval并不理想时,或许你可以看看这篇文章!

阅读全文

Vue响应式原理

本文详细介绍响应式原理

内容包括

  • 什么是响应式原理
  • 响应式原理的实现
  • 什么是依赖跟踪
  • 依赖跟踪的实现
  • 小型响应式系统的实现
    • 迷你观察者
阅读全文

JavaScript版代理模式

本文是基于JavaScript的代理模式
内容包括:

  • 什么是代理模式
  • 两个经典的代理模式示例
阅读全文

JavaScript版发布-订阅者模式

本文是基于JavaScript的发布-订阅者模式
内容包括:

  • 什么是发布-订阅模式
  • 如何实现
  • 一个简单的发布-订阅模式
  • Vue中的发布订阅者
  • 发布-订阅者模式和观察者模式的区别
阅读全文

动态规划

本文详细介绍动态规划,包括

  • 什么是动态规划?
  • 能解决什么问题
  • 动态规划的基本思想
  • 适用条件
  • 作用
  • 算法框架以及优化
  • 以及一道完整的动态规划题
阅读全文

关键渲染路径

关键渲染路径(Critial Rendering Path)

  • 从服务器获取HTML文件后到页面呈现完整内容发生的事情

分为六步

  1. 创建DOM树(Constructing the DOM Tree)
  2. 创建CSSOM树(Constructing the CSSOM Tree)
  3. 执行脚本(Running JavaScript)
  4. 生成渲染树(Creating the Render Tree)
  5. 生成布局(Generating the Layout)
  6. 绘制(Painting)
阅读全文