20191013 前端开发日报

JavaScript 实现文字剪贴板;仿 vue-cli 搭建属于自己的项目;给vue3源码添加注释:数据响应式部分;三十分钟学会使用vue-router搭建单页应用(SPA);javascript面向对象编程学习(四) —— 原型式、寄生式和寄生组合式继承;HTTPS协议是如何保证安全的?;JS模块化——CommonJS AMD CMD UMD ES6 Module 比较;从零搭建一个属于自己的react框架

  1. JavaScript 实现文字剪贴板 有一个简单的需求,用户需要快捷的复制一些相关的信息,然后进行下一步信息的填写。前端这里需要做一个剪贴板方便用户体验。想直接参考 react 使用的可以看使用react和typescript改写和优化一下 大概设计如下,有多条信息,然后用户可以点击右边的复制 icon 进行快捷的复制。 怎么使用JavaScript实现…
  2. 仿 vue-cli 搭建属于自己的项目 前段时间学习了webpack4的相关配置,webpack4入门篇,之前的所有项目都是使用vue-cli来搭建的,刚好公司最近有个新的项目要启动,想提升自己的逼格,正好也可以巩固之前学习的webpack4的内容,决定自己用webpack来搭建一个属于自己的脚手架。 目录结构 ├── README.md ├── configs /所有的webpack配置 │ ├── util.js…
  3. 给vue3源码添加注释:数据响应式部分 export const isObject = (val: any): val is Record<any, any> => val !== null && typeof val === ‘object’ // 引入packages->shared 文件夹下的isObject函数 // 类型保护, al is Record 类型谓词,每当调用isObject这个函数的时候,传入任意的值必须是Record这个函数里的一个参数名,这个函数定义了任意…
  4. 三十分钟学会使用vue-router搭建单页应用(SPA) 一、什么是单页应用 单页web应用(single page web application,SPA),就是只有一张Web页面的应用。单页应用程序 (SPA) 是加载单个HTML 页面并在用户与应用程序交互时动态更新该页面的Web应用程序。浏览器一开始会加载必需的HTML、CSS和JavaScript,所有的操作都在这张页面上完成,都由JavaScript来控制。因此,对单…
  5. javascript面向对象编程学习(四) —— 原型式、寄生式和寄生组合式继承 function CreateObject(obj){ function O() {}; O.prototype = obj; return new O(); } const person = { name: ‘大魔王’, names: } const child = CreateObject(person); console.log(child.name); // 大魔王 child.name = ‘小魔王’ child.names.push(‘魔王’) cons…
  6. HTTPS协议是如何保证安全的?相信大家对于HTTPS协议都不陌生,但是应该存在以下疑问: HTTPS协议到底是如何运作的? HTTPS是如何解决HTTP协议的不安全特性的? HTTPS网站抓包为什么要信任证书? HTTP协议 HTTP协议是一个应用层协议,通常运行在T…
  7. JS模块化——CommonJS AMD CMD UMD ES6 Module 比较 CommonJS是服务器模块的规范,Node.js采用了这个规范。 根据 CommonJS 规范,一个单独的文件就是一个模块,每一个模块都是一个单独的作用域,在一个文件定义的变量(还包括函数和类), 都是私有的 ,对其他文件是不可见的。 CommonJS规范加载模块是同步的,也就是说,只有加载完成,才能执行后面的操作。 Com…
  8. 从零搭建一个属于自己的react框架 事例一:我们在使用react的时候,会用 create-react-app 命令下载一个react的模板,然后开始在里面实现各种功能。 事例二:前几个月的时候,我偶然发现飞冰官网,浏览后觉得不错,并在其上面下载了几个模板。 那我们可能好奇两件事情: 这个模板是如何从一个空目录下搭建起来的呢 这个模板搭建起来之后,…
  9. js运行机制和事件循环任何 JavaScript 代码片段在执行前都要进行编译(通常就在执行前)。因此,JavaScript编译器首先会对 var a = 2; 这段程序进行编译,然后做好执行它的准备,并且通常马上就会执行它。
  10. 详解 HTTP 报文(二):Web 容器是如何解析 HTTP 报文的 摘要 在详解http报文一文中,详细介绍了http报文的文本结构。那么作为服务端,web容器是如何解析http报文的呢?本文以jetty和undertow容器为例,来解析web容器是如何处理http报文的。 在前文中我们从概览中可以了解到,http报文其实就是一定规则的字符串,那么解析它们,就是解析字符串,看看是否满足…
  11. 经典万字长文前端面试题集锦+源码阅读 【彻底系列化你的知识体系】对于面试这块,作者目前是接近百分百的成功几率(可能我面试的没那么高级),所以今天鼓起勇气向大家推荐自己曾经背诵的面试题以及源码阅读~
  12. 浅析Vue3数据响应系统 国庆长假还没结束,尤大大就把Vue3源码给放了出来,还能不能好好让人好好放个假:fearful:,目前的版本还是 Pre-Alpha ,源码地址: Vue-next , 而正式版本可能要明年才发布了,于是放假回来,便第一时间clone了源码,生啃了起来,还别说,真香~~~:joy: 源码整体结构还是比较清晰,相比较于Vue2.x做了比较大的调整…
  13. 为什么要使用 package-lock.json在本文中,我们将介绍 package-lock.json 为什么重要,以及如何与 NPM CLI 一起使用。
  14. VUE 的单向数据流 所有的 prop 都使得其父子 prop 之间形成了一个单向下行绑定:父级 prop 的更新会向下流动到子组件中,但是反过来则不行。 个人理解:你父亲能他的基因遗传给你,而你却不能把基因给你父亲 Vue 的父组件和子组件生命周期钩子函数执行顺序可以归类为以下 4 部分: 加载渲染过程: 父 beforeCreate -> 父 created…
  15. CSS 预处理语言之 Scss 篇Sass 和 Scss 其实是同一种东西,我们平时都称之为 Sass;Scss 是 Sass 3 引入新的语法,其语法完全兼容 CSS3,并且继承了 Sass 的强大功能。也就是说,任何标准的 CSS3 样式表都是具有相同语义的有效的 Scss文件…
  16. 通过 Laravel 创建一个 Vue 单页面应用(四)我们在第三部分中放弃构建真实的用户端,而学习使用 Vue 路由获取组件数据的新方式。现在我们准备将注意力转移到为用户创建 CRUD(增删改查)的功能上 —— 本教程将聚焦在编辑已存在的用户。
  17. vue3中effect与computed的亲密关系 在我刚看完vue3响应式的时候,心中就有一个不可磨灭的谜团,让我茶不思饭不想,总想生病。那么这个谜团是什么呢?就是在响应式中一直穿行在tranger跟track之间的effect。如果单纯的响应式原理根本就用不上effect,那么effect到底是干什么的呢? 船到桥头自然直,柳岸花明又一村。苦心人天不负,偶然间我看到了effect测…
  18. GitBook 入门教程之从零到壹发布自己的插件 什么是插件 Gitbook插件是扩展Gitbook功能的最佳方式,如果Gitbook没有想要的功能或者说网络上也没有现成的解决方案时,那么只剩下自食其力这条道路,让我们一起来自力更生开发插件解决问题吧! 幸运的是,Gitbook提供了插件机制留给开发者去扩展自定义功能,虽然官方开发文档不是特别完善,甚至有时候需要翻…
  19. 使用 webpack4 手动搭建一个 vue 项目 mkdir my-vue cd my-vue // 生成 package.json npm init 复制代码 安装 webpack yarn add webpack –dev // webpack4 中把命令行工具 webpack-cli 分离了,需要手动安装 yarn add webpack-cli –dev // 用于启动服务,访问 http://localhost:8080 进行调试 yarn add webpack-dev-server –dev 复制…
  20. react+webpack4搭建前端项目(三)打包优化 注意 antd 版本 "antd": "^3.8.3", ,高版本的 antd 官方把图标库也构建到release包,所以导致打包变得很大,仅仅 icon 图标库就有几百KB,请看下图。如果遇到这个问题,请降低 antd 的使用版本到3.8.3以前 下边打包优化的基础代码请点击 源码1.0.3 。有不熟悉的同学可以看一下,下载…
  21. 2019年,看了这一份, 再也不怕前端面试了2019年情况又有所不同, 我就结合去年的一些经验和今年观察到的一些情况再总结一篇, 有需要面试的朋友可以参考下。
  22. React Native 和 Jenkins 不得不说的二三事 app开发和测试过程中我们都会执行npm start命令来启动服务,只是这样还是很繁琐,我们需要人工介入才能发布代码,本篇文章的目的就是介绍如何使用jenkins让我们的项目自动化。 1. 项目准备 原理是打包bundle,然后把文件放到服务器上。 react-native打包文件结果包含bundle文件和图片资源文…
  23. 写给前端工程师的 Serverless 入门 Serverless 是前端圈近两年比较火热的词汇,但其第一次被提出已经是 7 年前的事情,那么什么是 Serverless 服务,其架构由哪些部分组成,又有什么优缺点,本文将一一道来。 趋势 参考《RightScale 2019 年云状态报告》,从 2018 年到 2019 年,Serverless 是公有云中使用率增长最快的服务,达到 50% 的增长…
  24. 我对 JS 中相等和全等操作符转化过程一直很迷惑,直到有了这份算法在日常的 JS 编码过程中,可能很难看到相等运算符(=)是如何工作的。特别是当操作数具有不同类型时。这有时会在条件语句中产生一些难以识别的 bug。很容易理解为什么 0 == 8 是 flase 的或者 ” == false 是 true…
  25. React Native 实现城市选择组件 目录 前言 功能分析 思路 实现 总结 前言 很多 App 都有城市选择的功能,今天带大家编写一个城市选择组件。下面是这个组件的效果图。 功能分析 从上图中可以看出,我们将所有城市按照字母区分块,右边是字母索引。通过点击右边的字母…

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

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


关注我

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

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

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