20200318 前端开发日报

小姐姐用 HTML + CSS 画油画?谁能想到前端还有这么一手操作;最简实现可以异步链式调用的Promise(20行);Vue源码探秘(一);使用Go语言创建WebSocket服务;给 NodeJS 的 Logs 点颜色看看;JavaScript 深入系列之浮点数精度;Vuex调用接口的三个阶段;Vue2.0 【第三季】第1节 propsData Option 全局扩展的数据传递

  1. 小姐姐用 HTML + CSS 画油画?谁能想到前端还有这么一手操作如图所示,这位小姐姐的名字叫 Diana Smith ,在她的个人博客上介绍自己是一位 JavaScript 开发人员,技能树包含 React / Vue / Backbone / jQuery ,还是一位 CSS 专家(LESS 和 SASS 双修),同时也是一位响应...
  2. 最简实现可以异步链式调用的Promise(20行) 在面试的时候,经常会有面试官让你实现一个Promise,如果参照A+规范来实现的话,可能面到天黑都结束不了。 说到Promise,我们首先想到的最核心的功能就是异步链式调用,本篇文章就带你用20行代码实现一个可以异步链式调用的Promise。 这个Promise的实现不考虑任何异常情况,只考虑代码最简短,从而便于读者理解核心的...
  3. Vue源码探秘(一) 引言 Vue 作为当前前端开发中比较重要的框架,在企业级开发中应用十分广泛。目前也是我的主要技术栈之一。在接下来的系列文章中,我将带大家一起探秘 Vue.js 底层源码。 本篇文章是 Vue源码探秘 的第一篇。在这一篇中,我主要是带大家做一些准备工作,介绍一下 flow 、 源码目录 和 源码构建流程 。 认识flo...
  4. 使用Go语言创建WebSocket服务今天介绍如何用Go语言创建WebSocket服务,文章的前两部分简要介绍了WebSocket协议以及用Go标准库如何创建WebSocket服务。第三部分实践环节我们使用了gorilla/websocket库帮助我们快速构建WebSocket服务,它帮封装...
  5. 给 NodeJS 的 Logs 点颜色看看 在任何应用中,日志都是一个非常重要的部分。我们借助它来调试代码,还可以将它通过 Splunk 等框架的分析处理,了解应用中的重要统计数据。从我们敲出 “Hello Word!” 的那一天起,日志就成为了我们的好朋友,帮助了我们很多。所以说,日志基本上是所有后端代码架构中必不可少的部分之一。市面上有许多可用的日志库,比如...
  6. JavaScript 深入系列之浮点数精度0.1 + 0.2 是否等于 0.3 作为一道经典的面试题,已经广外熟知,说起原因,大家能回答出这是浮点数精度问题导致,也能辩证的看待这并非是 ECMAScript 这门语言的问题,今天就是具体看一下背后的原因。
  7. Vuex调用接口的三个阶段 编者按:本文作者李松峰,资深技术图书译者,翻译出版过40余部技术及交互设计专著,现任360奇舞团web前端开发资深专家,360前端技术委员会委员、W3C AC代表。 本文源自3月11日作者在公司内部的一次“泛前端分享”,是作者在开发IoT智能设备联动场景项目过程中的一些经验总结。文中代码可以视作伪代码,不包含任何涉及真...
  8. Vue2.0 【第三季】第1节 propsData Option 全局扩展的数据传递 Vue2.0 【第三季】第1节 propsData Option 全局扩展的数据传递 第1节 propsData Option 全局扩展的数据传递 这一季讲的是基础中的选项,选项就是在Vue构造器里的配置功能的前缀(Vue已经给我们定义好了),Vue有很多选项,我们将在这一级教程中一一介绍。 propsData 不是和属性有关,他用在全局扩展时进行传递数...
  9. vue nextTick 引发的思考 最近做项目碰见一个这样的问题,伪代码(vue版本为2.6.x)如下: <template> <div class="layout"> <TopBar /> <div class="main" v-if="isRouterAlive"> <slot /> </div> </div> </template> &...
  10. 通过vue-property-decorator源码学习装饰器 设计模式中有一个结构型设计模式:装饰器模式,定义是在不改变原有逻辑的情况下对其进行包装拓展从而满足更复杂的需求。在Java中有@annotation用来为类或方法添加注解,例如@override用于检查子类是否正确重写父类方法。ES7和TypeScript同样也引入了装饰器,一种特殊类型的声明,它能够被附加到类声明,方法, 访问符,...
  11. 如何取消 JavaScript 中的异步任务 每日前端夜话 第296篇 翻译: 疯狂的技术宅 作者:Tomasz Jakut 来源:ckeditor.com 正文共:2407  字 预计阅读时间:7 分钟 有时候执行异步任务可能是很困难的,尤其是在特定的编程语言不允许取消被错误启动或不再需要的操作时。幸运的是 JavaScript 提供了非常方便的功能来中止异...
  12. JavaScript-判断语句(if…else) if…else语句是在指定的条件成立时执行代码,在条件不成立时执行else后的代码,书写格式如下: 1 if(条件) 2 { 条件成立时执行的代码 } 3 else 4 { 条件不成立时执行的代码 } 假设我们通过年龄来判断是否为成年人,如年龄大于等于18岁,输出“成年人的世界哪有容易二字”,否则展示“没啥,反正已经一败涂地,大不了从头...
  13. 55 个提高你 CSS 开发效率的必备片段这篇文章会记录我们平时常用到的 CSS 片段,使用这些 CSS 可以帮助我们解决许多实际项目问题中遇到的,墙裂建议点赞收藏再看,方便日后查找
  14. Vuejs 脚手架介绍和框架开发入门 Vuejs 脚手架介绍 使用Vue.js开发大型应用时,我们需要考虑代码目录结构、项目结构和部署、热加载、代码单元测试等事情。如果每个项目都要手动完成这些工作,那无疑效率比较低效,所以通常我们会使用一些脚手架工具来帮助完成这些事情。 CLI是什么意思? CLI是 Command-Line Interface , 翻译为命令行界面, 但是...
  15. CSS进阶之CSS变量前言 基本用法 使用自定义属性的第一步 自定义属性的继承 自定义属性的回调值 有效性和值 无效的变量会发生什么 通过js中获取到的css变量值 var()与rgba()配合实现复用变量 vue实战: 通过颜色选择器切换热力图主...
  16. 《吊打面试官》系列 Node.js 必知必会必问 前言 codeing 应当是一生的事业,而不仅仅是 30 岁的青春:rice: 本文已收录 Github ,欢迎 Star,一起接水:droplet: 作为一个在互联网公司面一次拿一次 Offer 的面霸,打败了无数竞争对手,每次都只能看到无数落寞的身影失望地离开,略感愧疚。 在一个寂寞难耐的夜晚,我痛定思痛,决定开始写面试相关的文章,...
  17. 12 种使用 Vue 的最佳做法点赞再看,养成习惯本文 GitHub [链接] 上已经收录,更多往期高赞文章的分类,也整理了很多我的文档,和教程资料。欢迎Star和完善,大家面试可以参照考点复习,希望我们一起有点东西。
  18. 2020面试收获 - js原型及原型链 2020年是特殊的一年,由于疫情原因,大家都窝在家办公。而我则怀着梦想,从天津来到了北京,开启了人生的第一次跳槽。 在面试过程中,频频被原型相关知识问住,每次回答都支支吾吾。后来有家非常心仪的公司,在二面时,果不其然,又问原型了! 我痛下决心用了两天时间钻研了下原型,弄明白后发现世界都明亮了,原来...
  19. TS + Vue 构建vuex和vue-router模块 首先,我们要在store文件夹内建立几个文件 这几个文件是vuex里的几个模块,每个文件都导出一个对象; 然后在index.ts文件下引入这些对象,如下代码: import Vue from 'vue'; import Vuex, { Commit, Dispatch } from 'vuex'; import state from './state'; import mutations from './mutations'; import actio...
  20. 7 个你应该知道的 JavaScript 原生错误类型提示:良好的错误提示会导致快速而无痛的发展经历与缓慢而痛苦的发展经历之间的区别。在编写可重用的代码时,请确保自己在编写清晰易懂的错误处理代码。
  21. 关于webpack中file-laoder的publicPath路径问题 配置webpack的时候,新手难免会遇到路径问题,这里写一个昨天“研究”到凌晨2点,后来看loader源码才发现的路径问题:sob: 二、问题 在配置file-loader的时候,没写option.publicPath,最后发现文件居然也能加载正确的加载路径 三、描述 webpack官方文档 告诉我们,如果publicPath不写的话,默认为_ webpack_public...
  22. git commit之后,想撤销commitgit commit之后,想撤销commit 原文 写完代码后,我们一般这样 git add . //添加所有文件 git commit -m "本功能全部完成" 执行完commit后,想撤回commit,怎么办? 这样凉拌: git reset --soft HEAD^ 这样就成...

关注github前端日报 订阅精彩文章

前端日报栏目数据来自码农头条,每日分享互联网上热门的前端开发、移动开发、设计、资源和资讯等,为开发者提供动力,如果觉得内容对你有用,记得分享给你的小伙伴。进入码农头条查看更多

原文:20200318 前端开发日报 ,未经许可,禁止转载。
来源:前端开发博客 (http://caibaojian.com/fe-daily-20200318.html)