20200529 前端开发日报

通熟易懂的Vue异步更新策略及 nextTick 原理;Vue项目优化总结;vue3.0创建项目及API讲解(一);2020-5-27-Nodejs源码阅读——事件循环;关于 Vue 构造选项;vue-router原理及其核心功能实现;你真的理解Vue的数据响应式吗;带你了解路由的底层原理,用原生js手写一个路由

  1. 通熟易懂的Vue异步更新策略及 nextTick 原理

    最近在学习一些底层方面的知识。所以想做个系列尝试去聊聊这些比较复杂又很重要的知识点。学习就好比是座大山,只有自己去登山,才能看到不一样的风景,体会更加深刻。今天我们就来聊聊Vue中比较重要的异步更新策略及 nextTick 原理。 在聊话题之前我们可以看下下面这道面试题: setTimeout(() => { console.lo…

  2. Vue项目优化总结

    代码优化 Webpack配置优化 其它优化 代码 v-show 和 v-if 区分使用 v-show 根据表达式之正假值,切换元素 display CSS property。当条件变化时该指令触发过渡效果。适用于频繁操作,不会触发浏览器的重排。 v-if 根据表达式的值 truthiness 来有条件地渲染元素。在切换时元素及它的数据绑定/组件被销毁并…

  3. vue3.0创建项目及API讲解(一)

    2、创建项目(vue create vue3test ) 选择default(直接回车enter),初始化项目 3、进入项目文件夹,更新vue版本(vue add vue-next) 4、运行项目(npm run serve) 5、浏览器上访问( http://localhost:8081 ),初始化页面展示 二、Vue3AP…

  4. 2020-5-27-Nodejs源码阅读——事件循环

    最近看到Nodejs的事件循环,发现网上的一些文档和描述都不够清晰。 所以今天来和大家一起从源码出发了解下Nodejs的事件循环机制。 官网描述 我们先看下nodejs的官网对事件循环的描述。 ┌───────────────────────────┐ ┌─>│ timers │ │ └─────────────┬─────────────┘ │ ┌─────────────┴…

  5. 关于 Vue 构造选项

    const vm = new Vue(options) 其中 vm 对象 封装 了对视图的所有操作,包括 数据读写、事件绑定、DOM 更新 vm 的 构造函数 是 Vue,按照 ES6 的说法,vm 所属的 类 是 Vue options 是 new Vue 的参数,一般称之为 选项 或者 构造选项 2、options 里面有什么 五类属性 数据: da…

  6. vue-router原理及其核心功能实现

    自从网站,web等诞生开始,路由就一直存在;在前后端分离之前,一般提到的路由都是后端路由;路由通过一个请求,然后分发到指定的路径,匹配对应的处理程序;它的作用就是分发请求,把对应的请求分发到对应的位置 前端路由与后端路由 后端路由 后端路由可以理解为服务器将浏览器请求的url解析之后映射成对应的函数…

  7. 你真的理解Vue的数据响应式吗

    作者:Paula Hu 博客:掘金主页、 知乎主页 、 GitHub主页 点赞是对原创者最大的肯定,我希望在这里看到你努力的身影~~~:kissing_heart::kissing_heart::kissing_heart: 写在前面 我相信很多同学对Vue的数据响应式是通过 Vue.js文档 来了解的,但毕竟文档的篇幅有限,你能知道自己理解了多少吗?先来看看下…

  8. 带你了解路由的底层原理,用原生js手写一个路由

    路由的基本功能是为了保证视图和URL的同步,而视图可以看成是资源的一种表现。 目前,前端的主流Vue、React、Angular这些,他们都提供了有关路由的插件,一般来说,这些路由插件总是提供两种不同方式的路由方式: Hash 和 History。具体内容将会在下文中提到,下面就让我们围绕这两种方式来简单手写一个路由: 1、Ha…

  9. js 深复制 VS 浅复制

    理解 js 深复制与浅复制,我们首先需要理解的概念有:堆,栈,数据类型,引用类型 堆与栈的特点 堆: 存储引用类型数据 按引用访问 存储空间动态分配 无序存储,可以通过引用直接获取 存储空间大,但是运行效率相对较低 栈: 存储基础数据类型 按值访问 存储空间固定 由系统自…

  10. Vue 使用 vue-svg-icon

    1. 阿里巴巴矢量图 选择需要的字体修改参数 选择SVG下载 2. IcoMoon 点击右上角"icoMoon App" 点击左上角"Import Icons" 选择下载的 svg 文件,点击"打开"按钮 页面上会多一个"Untitled Set"选项,下面的小图标就是导入的本地 svg 文件 …

  11. 前端性能优化:当页面渲染遇上边缘计算

    简介: 当前几种常见的前端性能优化方案仍然不可避免地会存在一些缺点。本文在 ESI (Edge Side Include) 的基础上,提出了一种新的优化思路:边缘流式渲染方案(ESR),即借助 CDN 的边缘计算能力,将静态内容与…

  12. CSS 中 关于 Overflow ,你需要了解的这些知识点

    点赞再看,养成习惯本文 GitHub [链接] 上已经收录,更多往期高赞文章的分类,也整理了很多我的文档,和教程资料。欢迎Star和完善,大家面试可以参照考点复习,希望我们一起有点东西。

  13. JavaScript 执行机制——前端菜鸟的总结

    导图要表达的内容用文字来表述的话: 1.同步和异步任务分别进入不同的执行"场所",同步的进入主线程,异步的进入Event Table(事件表)并注册函数。 2.当指定的事情完成时,Event Table会将这个函数移入Event Queue。 3.主线程内的任务执行完毕为空,会去Event Queue读取对应的函数,进入主线程执行。 4….

  14. 一文讲透 Git 底层数据结构和原理

    阿里妹导读:本文将系统分享 Git 底层知识:对象生命周期变化,底层数据结构,数据包文件结构,数据包文件索引,以及详细分析对象查询流程和算法。 文末福利:程序员需要哪些软技能? 状态模型 上图描述了 git 对象的在不同的生命周期中不同的存储位置,通过不…

  15. flask-restful: Web-Backend Api On Python3 With Flask-Restful

    README.md flask-restful This is a web backend project based on theflask-restful, coding inpython3.8. You can treat it as a template to learn web-framework or just simply a start to use python writing w…

  16. 前端|不用JS就能实现的选项卡

    欢迎点击「算法与编程之美」↑关注我们! 本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列文章。 欢迎加入团队圈子!与作者面对面!直接点击! 1.选项卡介绍 在平时浏览网页时,大家经常会使用选项卡来切换页面,在设计网页的过程中,也常用选项卡来整合内容,美化页面…

  17. JS数据类型以及检测

    基本数据类型 number string boolean null undefined Symbol Symbol 是es6新增的基本数据类型,可以用来表示 唯一性 ,使用时候不需要new,直接声明即可 let a = Symbol() 即可,由于声明的…

  18. js如何实现一个对象的深拷贝

    在js中,如何复制一个对象? 大家的第一反应是直接使用赋值语句赋值嘛,比如 let a = {a: 1}; let b = a; 复制代码 看看打印结果 console.log(a) // {a: 1} console.log(b) // {a: 1} 复制代码 打印出来都是{a: 1},很不错,但是这样真的是拷贝出来一份了吗? 我们再试下一下的操作: a.b = 1; console.log(a) /…

  19. 写一个axios-ts吧Rollup搭建typescript库(二)

    构建一个由 typescript 编写的库,并打包出es模块、 CommonJS 、 AMD 三种模块。 安装 npm i rollup -D 复制代码 新建文件 src/index.js import {a, b} from ‘./test’ export default b 复制代码 src/test export const a = () => { console.log(‘a’) } export const b = () => { console.log(‘b…

  20. 手写 Promise-重置版

    因为 promise.then 必须是微任务,但是浏览器又没有除了 then 的微任务了。 function nextTick(fn) { if (process !== undefined && typeof process.nextTick === "function") { let counter = 1; let observe = new MutationObserver(fn); let node = document.createTextNode(String(counter…

  21. 如何在10分钟之内完成一个业务页面 – Vue的封装艺术

    真实干货,走心分享! 如何做一个优秀的时间管理者? lzx告诉我们,每天少睡几个小时,你就有更多的时间去做运动。 对于程序员来说,每天少点时间写业务,就有更多时间去做(hua)优(hua)化(shui)。 我们今天讲的是Vue中如何更灵活的封装业务组件,使效率翻倍。因为 Ctrl + c 加 Ctrl + v 都不足以满足我们了,搬过…

  22. Rxjs6学习: 过滤操作符

    在使用 angular 的过程中,rxjs的强大方便毋庸置疑,但是在初学的时候它的各种操作符是真的让人是查的心累。把使用及查到的各种操作符记录下来,方便查找。 过滤符 startWith: 在开头添加要发送的元素 filter: 传入function 过滤发送的元素(类似数组 filter) scan: 传入function (类似数据reduce 函数第一参…

  23. Vue 3教程(适用于Vue 2用户)

    Vue 3尚未正式发布,但是维护者已经发布了Beta版本,供我们的参与者尝试并提供反馈。 如果你想知道Vue 3的主要功能和主要变化是什么,那么我将在这篇文章中重点介绍一下,告诉你使用Vue 3 beta 9创建一个简单的应用程序。 我将介绍尽可能多的新内容,包括fragments,teleport,Composition API以及其他一些晦涩的更…

  24. Pug 3.0.0 发布,不再支持 Node.js 6/8

    近日,Pug 3.0.0 正式发布,Pug 原名 Jade,是由 TJHolowaychuk 开发的一款模板引擎,也是 Haml 的 JavaScript 实现版本。Pug 3.0.0 增加了一些新功能,除此之外新版本将不再支持 Node.js 6 和 Node.js 8。 重大变化 如果想使用支持 renderBuffer 的过滤器,read 插件必须返回到 Buffer。如果开发者不希望使用这一…

更多内容请关注公众号【前端开发博客】每日更新


关注我

我的微信公众号:前端开发博客,在后台回复以下关键字可以获取资源。

  • 回复「小抄」,领取Vue、JavaScript 和 WebComponent 小抄 PDF
  • 回复「Vue脑图」获取 Vue 相关脑图
  • 回复「思维图」获取 JavaScript 相关思维图
  • 回复「简历」获取简历制作建议
  • 回复「简历模板」获取精选的简历模板
  • 回复「加群」进入500人前端精英群
  • 回复「电子书」下载我整理的大量前端资源,含面试、Vue实战项目、CSS和JavaScript电子书等。
  • 回复「知识点」下载高清JavaScript知识点图谱

每日分享有用的前端开发知识,加我微信:caibaojian89 交流