美文网首页React
React 源码分析如何开始、如何查看、如何下载

React 源码分析如何开始、如何查看、如何下载

作者: 三也视界 | 来源:发表于2020-11-25 10:40 被阅读0次

    React 项目托管在 GitHub
    项目开发指引也可见官网 How to Contribute
    文章使用的版本为v16.8.6

    开始

    克隆代码到本地

    git clone https://github.com/facebook/react.git
    
    
    在这里插入图片描述

    查看分支,git branch -a

    image.png

    切到你需要的版本,或者找到head前面的最新的稳定版本,我这里是17.0.1,切换到 17.0.1 分支,git checkout 17.0.1

    image.png

    安装依赖,yarn install

    刚刚拉下来yarn install一直卡在electorn不知道为什么(更换淘宝的源也是一样卡在[7/11] electron)

    image.png

    这步卡着可以跳过继续往下走

    由源码编译

    项目目录结构

    在这里插入图片描述

    官网对编译的提示


    在这里插入图片描述

    从源码编译出 react.development.jsreact-dom.development.js

    执行

    yarn run build react/index, react-dom/index
    
    
    image.png image.png

    构建出的文件,保存在 build/node_modules/react,有 commonjs 和 umd 两个版本。

    image.png

    直接打开 fixtures/packaging/babel-standalone/dev.html

    image.png

    页面使用的是最新编译出来的 react.development.js 和 react-dom.development.js


    在这里插入图片描述

    更改代码测试效果

    在 setState 内部添加一个 log,更改 packages/react/src/ReactBaseClasses.js

    在这里插入图片描述

    重新编译 react ,yarn run build react/index

    在这里插入图片描述

    查看 react.development.js,在 build/node_modules/react/umd/react.development.js

    在这里插入图片描述

    至此,代码编译都已经成功了。

    使用自己编译出来的 react、react-dom

    使用 create-react-app 初始化一个项目,删除 package.json 中 dependencies 中的 react、react-dom。

    在这里插入图片描述

    进入之前编译好的 react、react-dom 目录,分别执行 yarn link
    再到项目目录,输入yarn link react react-dom,启动 yarn start 即可。

    源码查找

    需要查看ReactDOM.render源码

    ReactDOM.render(
      <React.StrictMode>
        <App />
      </React.StrictMode>,
      document.getElementById('root')
    );
    

    点击render进入


    image.png

    查看render得 声明是混淆过的,这里无法继续跳转


    image.png
    我们知道是react-dom的代码,打开react项目
    image.png

    或者打开ReactDom.js


    image.png

    点击render发现跳转的都是ReactDomLegacy.js

    image.png

    相关文章

      网友评论

        本文标题:React 源码分析如何开始、如何查看、如何下载

        本文链接:https://www.haomeiwen.com/subject/npamiktx.html