细说JS继承 继承在各种编程语言中都扮演着一个重要的角色,应用场景也十分丰富。它是面向对象且主要作用就是复用代码,提高效率。借助JS这种弱类型语言的灵活特性,又让它显得更灵活飘逸,在前端基建中经常可以看到继承的使用。所以有必要捋一捋继承这一块的知识,主要是JS中继承的各种方式以及各自的优缺点,还有 ES6 中 extend 的原理。 2021-01-30 前端 JS
2020征途大总结 前言时间如白驹过隙,一转眼一年就要过去。2020年是不寻常的一年,这一年跌宕起伏甚是惊险,相信大部分人都是这样的感觉。但是惊险之中伴随着不一样的精彩,那么按照以往的惯例,年底了对自己这一年进行一波回顾和总结,再者对未来做一些规划和展望。 2020-12-23 代码人生 总结
React踩坑--配置篇 最近在使用React的脚手架create-react-app搭建项目的时候踩了一些坑,主要都是配置方面的坑,大体上是因为React官方是把webpack等配置都封装好并隐藏起来,所以如果需要自定义配置需要自行处理,当然脚手架也提供了eject命令来释放配置,但是这是一个单向不可逆操作,释放了就回不来了,所以最好不要随便就释放配置。 2020-12-02 前端 React
浏览器工作原理-渲染流程 浏览器在走完导航流程之后,接下来就是渲染阶段,走渲染流程。 渲染流程按照流水线可以分为以下阶段:DOM树构建、样式计算、布局阶段、分层、绘制、分块、栅格化、合成。每个阶段都有自己的输入内容、处理过程和输出结果。 2020-11-20 浏览器 工作原理
浏览器工作原理-导航流程 下面从一道常见的题目来开启浏览器工作原理之旅:用户输入URL到页面展示,这个过程发生了什么? 浏览器架构开始之前先了解一下浏览器的架构,此处以chrome为例。 2020-11-19 浏览器 工作原理
开发一个UI框架项目[10]-Pagination 设计细节 页码样式。页码不采用圆圈显示:当页码数值比较大时,有可能溢出圆圈,样式也并不好看。 页码显示。存在多于一页的情况时,页码显示第一页、当前页-2,**-1、当前页、当前页+1,+2、最后一页,重复则去重,中间未显示的页码用“…**”代替。 2020-11-12 前端 vue
开发一个UI框架项目[9]-Carousel 设计细节 轮播分为有缝轮播和无缝轮播,这里采用的是无缝轮播。 轮播功能主要基于vue过渡&动画实现,建议对这方面做一定的了解,很好用。 加上touchStart和touchEnd事件处理,增加对移动端的支持。 本次父子组件通信使用$parent和$children。 使用到了updated生命周期来处理轮播的选中更新等操作。 2020-10-31 前端 vue
开发一个UI框架项目[8]-Collapse 设计细节 展示模式。默认可以同时展示多个折叠面板,也可以通过设置single属性来开启手风琴模式,即每次只能展示一个折叠面板。 控制打开与关闭采用单向数据流。关于折叠面板的开关控制方式,在多次试错后,决定采用单向数据流的方式:新建一个事件总线eventBus,点击折叠面板后,该子组件不直接操控自身的开启或关闭,而是通过eventBus去通知父组件,然后由父组件进行某些逻辑处理后,再通过eventB 2020-10-15 前端 vue