小菜鸡的成长之路(前端工程化);vue性能优化之Gzip压缩;打造一款适合自己的快速开发框架-前端篇之代码生成器;程序员必备基础:Git 命令全方位学习;替代 webpack?带你了解 snowpack 原理,你还学得动么;自检清单-JavaScript基础-变量和类型;JavaScript语句和声明之let,const;Vue学习笔记5-前端工程化
-
写在前面 小菜鸡的我又来记录笔记了,这次是前端工程化,感觉现在的前端能做的事情很多,不仅仅是以前写写页面的切图仔了。大到编辑器、页面,小到服务端的增删改都可以去做,而且也不在拘于web端,app、桌面端、服务端都有所涉及。那这次我是学习了webpack方面的知识,总结了一下形成以下笔记~ 前端工程化 …
-
compression-webpack-plugin是一个非常好用的压缩插件,适用于vue-cli版本2以上, 安装的时候一定要带上版本号, 否则的话,版本太高 可能会报错。 npm install –save-dev compression-webpack-plugin@1.1.12 2.修改config下的index.js,将 productionGzip 改为true 3.修改build下的 webpack.prod.con…
-
在后端篇中已对代码生成器的原理进行了详细介绍,同时也做了java和python版的实现。但是对于前端来说,仅靠后端提供的数据库元数据还是不足以满足代码生成的要求的,而且前后端分离后,个人还是想把代码生成的活独自交给前端维护,因此也为前端单独开发一个代码生成器。 前端代码生成原理 其实前端代码生成的原理和后…
-
掌握Git命令是每位程序员必备的基础,之前一直是用smartGit工具,直到看到大佬们都是在用Git命令操作的,回想一下,发现有些Git命令我都忘记了,于是写了这篇博文,复习一下~
-
替代 webpack?带你了解 snowpack 原理,你还学得动么
近期,随着 vue3 的各种曝光,vite 的热度上升,与 vite 类似的 snowpack 的关注度也逐渐增加了。目前(2020.06.18)snowpack 在 Github 上已经有了将近 1w stars。 snowpack 的代码很轻量,本文会从实现原理的角度介绍 snowpack 的特点。同时,带大家一起看看,作为一个以原生 JavaScript 模块化为核心的年轻的…
-
【介绍】 又是一个来说说自检清单的无名选手,说多了都是学习。参考来自大佬出的 《一名【合格】前端工程师的自检清单》 ,每个题目不是只是简单回答了就没了,多的是想通过这几道问题,能够真的了解到它是怎么来的,因为自己也是在慢慢学习,当做笔记了。 希望当你看到最后,再回头看看自检清单的问题,脑子里知…
-
let 语句声明一个 「 块级作用域 」 的本地变量,且可选地将其初始化为一个值。 const 语句声明的 「 常量 」 是 「 块级作用域 」 ,与使用 let 语句定义的变量相似。常量的值 「 不能通过重新赋值来改变 」 ,且 「 不能重新声明 」 。 1.语法 ❝ …
-
命名冲突 文件依赖 通过模块化解决上述问题 模块化就是把单独的一个功能封装到一个模块(文件)中,模块之间相互隔离,但是可以通过特定的接口公开内部成 员,也可以依赖别的模块 模块化开发的好处:方便代码的重用,从而提升开发效率,并且方便后期的维护 ES6是浏览器端和服务器端通用的模块化开发规范 …
-
所有的对象都是__proto__属性,指向其构造函数的原型对象 所有的函数对象都有prototype属性表示原型对象,作用:共享实例对象的属性和方法. 构造函数绑定 Parent.apply(this,arguments) // this是子类实例,调用父类,即可拿到其属性和方法 复制代码 prototype模式 Child.prototype = new Parent() // 子类的原型…
-
AJAX 作为前端中的核心部分,我们可能在工作中,只是搬瓦工的角色,所以只会在写业务的时候给后端发送一个 axios 、 fetch 等请求,拿到数据渲染到页面后就不管不顾了,但是作为一个不想只是搬砖的工程师,深入的了解它还是非常有必要的,这篇文章将带你深入了解 AJAX 关于ajax的基础知识 ajax: 即async javascript…
-
这个面试题属于比较常见的面试题,但是我们在回答过程中但是还是有很多细节我们没有回答出来,那么接我们一起来探讨一下这个问题 为什么会出现深拷贝浅拷贝? 由于 javascript 存储的方式是堆栈存储,在 javascript 中分为两类数据类型,一类是简单数据类型,一类是复杂数据类型 简单数据类型…
-
原文: michaelnthiessen.com/6-levels-of… 在编写代码的时候,谁都想“少干活、多办事”。以组件而言,我们希望它能被不止一次地复用。 一些组件仅需基本的复用性。 另一些则需要更复杂的技术以充分利用。 我认为复用性有 6 中不同的层级,这里大体上来看一下: 1. 模版化 不同于将代码随处复制/粘贴的是,…
-
用vue进行开发的过程中,我们常常会用到父子组件通信来支持我们的一些应用场景。在子组件中通过触发自定义事件,并向上层组件传递一定的参数(暂且称为事件参数),但有时候我们也想要在父组件向监听函数传入一定…
-
去年前端界最轰动的事无非是 React Hook 的发布,上到 react-router 、 react-redux 等生态库,下到 React 应用开发者都从 class component 开发方式积极拥抱 Hook 。那今年我认为最值得关注的是 Vue3.0 ,目前我们可以从 vue-next 看到 Vue3.0 以及 vuex 、 vue-router 等生态的开发进度,大概7、8月份 Vue3.0 正式版本…
-
hooks 百度翻译为钩子,不要把 Hooks 和 Vue 的 生命周期钩子(Lifecycle Hooks) 弄混了,Hooks 是 React 在 V16.7.0-alpha 版本中引入的,而且几天后 Vue 发布了其概念验证版本。 最近尤大发布了一个最新的npm包 Hook是react中得一项新功能提案,可以让开发人员在不编写Class的情况下使用状态和其他React功能。 定…
-
js事件流:先捕获,其次处于目标阶段,最后冒泡。 事件代理:设置一个事件来处理一堆事件。 阻止事件冒泡:1.event.stopPropagation(仅阻止冒泡)2.在事件中返回false(阻止整个事件) 阻止默认事件:event.preventDefault. 3、js操作dom 创建:create 添加:append 删除:remove 替换:replace 插…
-
如果我们将一个页面中所有的处理逻辑全部放在一起,处理起来就会变得非常复杂,而且不利于后续的管理以及扩展。但如果,我们讲一个页面拆分成一个个小的功能块,每个功能块完成属于自己这部分独立的功能,那么之后整个页面的管理和维护就变得非常容易了。 组件化是Vue.js中的重要思想,它提供了一种抽象,让我们可以…
-
new Vue() {{ prop }} v-model <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Vue</title> </head&g…
-
不要让自己的上限成为你的底线 本文主要讲以下内容。 webpack-bundle-analyzer 占用统计查看所有的文件占用情况,使用 在线cdn 替换本地导入的包,使用 clean-webpack-plugin 清除 webpack打包残留 。 webpack-bundle-analyzer资源占用统计 使用 webpack-bundle-analyzer 插件查看项目文件资源占用情况。效果如…
-
webpack 在启动后,会根据 Entry 配置的入口,递归解析所依赖的文件。这个过程分为 搜索文件 和 把匹配的文件进行分析、转化 的两个过程,因此可以从这两个角度来进行优化配置。 1.1 缩小文件的搜索范围 搜索过程优化方式包括: 1. resolve 字段告诉 webpack 怎么去搜索文件,所以首先要重视 resolve 字段的…
-
用 Vue.js 3 Composition API 创建 i18n 插件
原文: vuedose.tips/create-a-i1… 在 Vue.js 3 中用 Composition API 编写插件的方式,和传统上通过一个 install 函数并被 Vue.use(plugin) 使用并不一样;后者通常会在 Vue 原型上做操作或扩展。 但在 Composition API 中的组件,操控是不可能操控的,且 i18n 组件要以一种 inject-provide 模式进行编码。举例…
-
webpack 是一个现代 JavaScript 应用程序的静态模块打包器 特性: 默认:默认只能处理JavaScript,其他类型文件需要配置loader或者plugins进行处理。 打包:将各个依赖文件进行梳理打包,形成一个JS依赖文件。 功能强大,loader和plugins可以根据个人需要随意配置。例如将es6转成es5的,将less、sass转成c…
-
记一次GraphQL真正的详细入门(原生,koa2,vue中的实战, 建议收藏)分享会
从上面可以看出, name2 与 name3 其实我不想要, 那你传给我那么多数据干什么,单纯为了浪费带宽吗?但是吧。。也可理解为某些场景下确实很鸡肋,但是请求多了效果就厉害了。
-
锵哥带你读好书系列之《深入浅出React和Redux》(第六章:React高级组件)
当你开始为自己写的代码感到太low而发愁的时候,恭喜你,你开始有了提升的潜意识,你欠缺的是一些技巧的指引。干货来袭!今天我们要来学习React的高级写法了!
-
提供想从事区块链开发的同学一篇入门实操案例,欢迎吐槽。 操作步骤 所有的操作都是在goland里面使用nodejs调web3库 编写合约 编译合约(web3)-用solc编译(拿到bytecode、abi) 部署合约(web3) 找到合约实例 调用合约(set,get操作) 开发环境 //安装淘宝的镜像 npm in…
更多内容请关注公众号【前端开发博客】每日更新