发表于: 2017-07-29 23:34:43
1 894
今天完成的事情:(一定要写非常细致的内容,比如说学会了盒子模型,了解了Margin)
了解三大框架之React的基本特点
Angular和React的基本特点
明天计划的事情:(一定要写非常细致的内容)
async/await的语法与如何使用?
如何在我们的开发环境中支持async/await语法?
遇到的问题:(遇到什么困难,怎么解决的)
在实际开发中总会遇到许多异步的问题,最常见的场景接口请求之后一定要等一段时间才能得到结果,如果遇到多个接口前后依赖,那么问题就变得复杂。大家都一直在尝试使用更好的方案来解决这些问题。最开始只能利用回调函数,后来开始有人使用Promise的思维来搞定。到ES6中开始支持原生的Promise,引入Generator函数。直到ES7,有了async/await。这是一个用同步的思维来解决异步问题的方案。
还不太分得清同步与异步的区别。
如果你已经彻底了解了事件循环,那么想必对异步的概念应该非常了解。当我们发出了请求,并不会等待响应结果,而是会继续执行后面的代码,响应结果的处理在之后的事件循环中解决。那么同步的意思,就是等结果出来之后,代码才会继续往下执行。
我们可以用一个两人问答的场景来比喻异步与同步。A向B问了一个问题之后,不等待B的回答,接着问下一个问题,这是异步。A向B问了一个问题之后,然后就笑呵呵的等着B回答,B回答了之后他才会接着问下一个问题。
那么我们先记住这个特点,async/await
使用同步的思维,来解决异步的问题。
收获:(通过今天的学习,学到了什么知识)
整个Angular应用程序的执行顺序 config -> run -> directive compile -> controller -> directive
数据绑定及其原理 关键词:dirty checking, $diget, $watch, $apply
作用域 关键词:$rootScope, $scope
自定义指令 关键词:directive, $compile,
如何自定义服务 关键词:provider, factory, service
指令间如何交互 关键词:require, controller,
如何有效的分层 如何进行DOM操作 关键词:directive link 路由 ngRoute 事件
如何实现动画 关键词 ng-if/ng-show/ng-hide ngAnimate
异步编程 $q, $http
React有许多非常优秀的特性,比如上手很容易,需要掌握的新东西并不多,我们只需要跟着官方文档动手写一些demo就能够对react有一个比较直观的了解。由于React自身的api并不多,因此常常需要借助原生的js方法,这让熟悉js的我感觉更加亲切。当然还有许多我没有体会到的优点,比如优秀的性能等。 React将大量html代码,通过jsx写在js文件里,大家都是一个重度依赖emmet插件写html的人,可是html代码跑到js文件里去了,就没办法快速的敲出html代码了,必须一个字母一个字母的敲,这严重影响了我的开发效率。和Angular相比,React并不是一个完整的框架,它仅仅只是一个框架的v层。也就是常说的UI层。也就是说,如果我们想要掌握好React,除了学习React本身,我还需要学习大量的其他插件来扩充React的功能。这直接导致了学习成本的剧增。
Angular足够稳定成熟,这么多年来有许许多多的人分享了大量的使用经验,我们可以找到许多优秀的文章。虽然初学angular学习成本高,但是认真学过来之后,感觉其实将Angular运用到一个比较好的程度,所花费的时间与精力肯定要比react要少很多。特别是在学自定义服务的时候,发现其实都是返回一个单例时,这对于只能够熟练使用js单例模式的我来说,就感觉十分轻松了。 Angular社区足够成熟,目前已经有非常多成熟的第三方模块,基本上可以解决前端遇到的各种问题。
评论