1. 尽量用 props & onChange,不要用 ref 获取引用然后调用方法。详情参考我的文章:一等公民 props & onChange
  2. React 只是一个视图框架,请尽量在 Component 里只做他擅长的事情。尽量写无状态的 Component。视图以外的事情,比如控制层、数据层、网络层,需要借助其他框架来完成。详情参考我的文章:React 仅仅是一个 view 框架
  3. 避免重复造轮子。react 有丰富的第三方 Component & Utils & everything。写任何组件前请先看看这里:awesome-react-components
  4. Less state,more PureComponent. 深刻理解和区分 Presentational Component 和 Container Component。前者决定组件如何显示,更关心对已知数据的展示,大量操作 dom,很少有 state;后者更关心数据的获取和更新,关心交互操作,很少直接操作 dom,可能包括很多 state。详解请参考:Presentational and Container Components
  5. 理解 React 的单向数据流,了解他的优势和局限。详情:React 组件数据流 && 组件间沟通
  6. 如果是中大型项目,请添加静态类型检查。TypeScript 或者其他类似的解决方案。因为 js 太自由了,很容易对一个对象增加和删除一个字段。如果,恰好其他人需要看这段代码,可能需要追溯好几条街,阅读7、8个代码文件,才知道某个对象的一个对象是从哪里来,结构如何。在多人配合的项目中,这种「自由」带来的便利,远远抵不上代码可读性降低带来的阻碍。

[react] React 新手必须知道的 N 件事的更多相关文章

  1. react.js 你应知道的9件事

    React.js 初学者应该知道的 9 件事   本文假定你已经有了一下基本的概念.如果你不熟悉 component.props 或者 state 这些名词,你最好先去阅读下官方起步和手册.下面的代码 ...

  2. 关于WPF你应该知道的2000件事

    原文 关于WPF你应该知道的2000件事 以下列出了迄今为止为WPF博客所知的2,000件事所创建的所有帖子. 帖子总数= 1,201 动画 #7 - 基于属性的动画 #686 - 使用动画制作图像脉 ...

  3. 在开发第一个Android应用之前需要知道的5件事:

    你能否详细讲述一下,在开发Android应用过程中每一阶段要用到的技能和编程语言? 建立一个Android应用程序可以归结为两个主要技能/语言:Java和Android系统.Java是Android的 ...

  4. (0)开始 Raspberry Pi 项目前需要知道的 10 件事

    https://www.digikey.cn/zh/articles/techzone/2017/feb/10-things-to-know-before-starting-a-raspberry-p ...

  5. 【转载】在IT界取得成功应该知道的10件事

     在IT界取得成功应该知道的10件事 2011-08-11 13:31:30 分类: 项目管理 导读:前面大多数文章都是Jack Wallen写的,这是他的新作,看来要成为NB程序员还要不停的自我总结 ...

  6. 关于C#你应该知道的2000件事

    原文 关于C#你应该知道的2000件事 下面列出了迄今为止你应该了解的关于C#博客的2000件事的所有帖子. 帖子总数= 1,219 大会 #11 -检查IL使用程序Ildasm.exe d #179 ...

  7. 《Offer一箩筐》求职之前你必须知道的 4 件事!!

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」. 如果觉得 「不错」 的朋友,欢迎 「关注 + 留言 + 分享」,文末有完整的获取链接,您的支持是我前进的最大的动力! Hi~ 这里是 ...

  8. 对于JavaScript的函数.NET开发人员应该知道的11件事

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 昨天小感冒今天重感冒,也不能长篇大论.如果你是.NET开发人员,在进入前端开发领域的时候,对 ...

  9. 在IT界取得成功应该知道的10件事

    导读:人人似乎都同意IT行业是一个艰难领域,但怎样才能克服逆境,成为一名成功的IT专业人士呢?下文这些特质应该是关键.此文作者Jack Wallen,他在前段时间写过不少文章讨论IT职场,比如退出IT ...

随机推荐

  1. 简说chart2.4的应用,以及Uncaught ReferenceError : require is not defined的解决

    51呢最近在学习chart.js,然后呢就照着中文的帮助文档来然后就一直出Uncaught ReferenceError : require is not defined的问题查了挺多才知道是帮助文档 ...

  2. Linux入门(7)——Ubuntu16.04安装wps并解决系统缺失字体问题

    进入WPS官网下载deb包: http://linux.wps.cn/ 安装,打开终端: cd 下载 ~a21_amd64.deb 解决打开WPS时出现的系统缺失字体问题: 下载 https://pa ...

  3. oracle建表权限问题和JSP连接oracle数据库基本操作

    JSP连接oracle数据库相关操作 1.创建表 打开Enterprise Manager Console,为用户添加权限CREATE ANY TABLE和分配一定的表空间USERS限额1024k. ...

  4. web.xml中<init-param>报错

    报错信息如下图: 控制台报错:严重: Servlet /*** threw load() exceptionjava.lang.ClassNotFoundException: MyApplicatio ...

  5. (转)Spark JAVA RDD API

    对API的解释: 1.1 transform l  map(func):对调用map的RDD数据集中的每个element都使用func,然后返回一个新的RDD,这个返回的数据集是分布式的数据集 l   ...

  6. Golang源码探索(一) 编译和调试源码

    GO可以说是近几年最热门的新型语言之一了, 一般人看到分布式和大数据就会想到GO, 这个系列的文章会通过研究golang的源代码来分析内部的实现原理, 和CoreCLR不同的是, golang的源代码 ...

  7. spring mvc常用注解的说明

    最近一段时间学习了springboot,所以熟悉一下mvc中常用的注解,这样可以方便开发 简介: @RequestMapping RequestMapping是一个用来处理请求地址映射的注解,可用于类 ...

  8. Leetcode题解(三)

    8.String to Integer (atoi) 题目 这道题目关键是要考虑清楚各种输入用例.针对每一种情况,函数都能处理,也就是函数鲁棒性很高.代码如下: class Solution { pu ...

  9. c++の奇技淫巧

    >如何用cmd编译c++?-m32究竟是什么操作?这究竟是道德的沦丧还是人性的泯灭,请收看今日的c++奇技淫巧 咳咳,扯远了(正经脸)主要是今天学了c++的一些编译技巧以及cmd的一些操作,总结 ...

  10. HDU 6092 Rikka with Subset

    Rikka with Subset Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others ...