前言:刚出来找工作的时候,各种东西都写了一遍,不精但广泛,纯js,react,ng,vue,啥都能写上一些,后来因为项目一直都是vue和混合开发的hbuild相关,期间又是乱学了一通,从php,python,egret,都写了点东西,然而根本用不上,期间穿插了其他事情,后来甚至连代码也不知道放到哪里去了,现在还是重新学下react,为了加深记忆,还是写个博客记录下。
准备工作:
- 先去react官网
- node环境,这个不用说的
- 安装下全局的react的框架,npm install -g create-react-app,创建 create-react-app my-app
开始:
跟随https://react.docschina.org/tutorial/tutorial.html#setup-for-the-tutorial,实现3子棋的效果。
总结:
- react没有区分dom跟js,而是把他们当做一个数据对象
- 所有的组件都可以继承 React.Component
- 组件中render返回的是dom字符串(赋值模式跟php类似)
- 在constructor中通过对state的赋值储存数据,this.setState({属性:属性值})来设置数据
- 数据的传值在父级(xx = {xxx}),子组件直接用this.props.xx就可以调用到(事件也是一样的)
感受:
因为我vue用的多,比较习惯 template,js,css 区分的模式,给我的感受是,如果是写事件逻辑,会比较方便(当然,也很容易造成命名重叠混乱的问题),父子组件通信在子传父比较简单,但如果频繁改样式,会让我改的比较难受