React Vs Angular 1.从框架来看Angular是MVC框架, 提供 HTTP服务,router, forms 等开箱即用的服务,所以灵活性没有React好React仅是一个view 在mvc 框架中,所以Model 和Controller层可以由用户自己决定用什么,灵活性比angular好,常用的三方库有:react-router路由跳转,redux数据状态管理,enzyme单元测试。 2.从体积大小来看Angul 2019-03-20 React
Redux的applyMiddleware源码分析 redux中dispatch只能是object对象,这对于同步的操作是可行的,但如果是异步的操作,那么将行不通,对此,redux提供了applyMiddleware来增强相应的disptch方法,同时将applyMiddleware返回的函数作为参数传入createStore中,替换当前store中的dispatch方法。下面我们具体结合redux-thunk中间件来分析下dispatch增强的源 2019-02-20 React
webpack中的配置devtool简单分析 对于devtool中的配置有十几种方式,搞不清楚到底该用哪种,于是对于每个配置都试着打包一遍,看看打包后的代码有何不同。 2019-01-21 Webpack
如何简单创建一个webpack loader 常言道授人以鱼不如授人以渔,当开发中某些loader满足不了我们特有的需求时,与其去网上搜罗,不如自己动手写个loader。 假如我们需实现这一个需求,对于html中的每个img标签,假设img标签中都没有alt属性(为了简单),统一给他们加上alt属性,并赋予相同的值,值由option配置。 为了实现该需求,首先创建index.js , index.html ,webpack.config.js 2019-01-15 Webpack
JS中常用的编码格式 Unicode:规定将全球的语言纳入一个字符集,即每种语言中的每个字符都有一个唯一的编码,以便可以跨平台,跨系统,跨语言而不冲突,且不用安装特定的字符集来解释某个国家的语言。 而UTF-8和UTF-16和UTF-32则是对Unicode字符集的具体实现的方法。 UTF-8: 在1-4个字节中变长表示,比如数字或字母采用1个字节表示,在node中,一般默认采用该方法。 UTF-16: 采用2字节或 2018-12-21 JS
jest + enzmye + ts测试react踩坑记 如大家所知,react官方提供了react-dom/test-utils和rreact-test-renderer来对react进行单元测试,而enzyme就是对他们的封装,更加便于开发者的使用。 那么在enzyme中shallow vs render vs mount 这3者有什么区别呢? shallow只会渲染一层元素,对于子组件是不渲染的。 如果需要测试组件生命周期,使用mount。 如果 2018-10-25 React
React中的Ref创建 1. ref用string 来表示 ,React中已将它废弃, 原因有: 静态类型检测不支持 无法混淆压缩 易产生挂载位置歧义 根组件无法使用 2018-09-25 React
TS学习笔记 在学习ts过程中,接口和类傻傻分不清楚,记录如下: 类implements接口: 接口不提供实现,类进行实现,接口仅校验实例部分 接口extends 接口:校验继承 接口extends类:接口继承了类,则该接口只能被这个类自己或类的子类所implements, 接口也可以作为变量类型检测 抽象类: abstract关键字修饰,不会被实例化,作为其他类的基类使用,定义的abstract方法必须在派 2018-09-20 TS
浅析Css中动画优化原理 说到web前端开发,就不得不提到动画,动画是网站吸引用户的重要因素之一。动画的实现一般有2种实现方式,通常说是命令式动画和声明式动画:命令式动画:用JavaScript实现,优点是富有可操控性如暂停,取消等,缺点是占用JS主线程,可能会丢失帧。声明式动画:用css实现,优点是浏览器会对动画进行优化,缺点是缺乏可操控性。 重点说下声明式动画,浏览器对动画的优化,如我们所知:在对DOM中的elemen 2018-09-18 CSS