首页 > 其他分享 >完整手写react第三天

完整手写react第三天

时间:2023-03-04 10:56:05浏览次数:30  
标签:宿主 plugin 环境 rollup 第三天 react 手写 jsx

实现JSX打包

React项目结构:

  • react(宿主环境无关的公用方法)
  • react-reconciler(协调器的实现,宿主环境无关)
  • 各种宿主环境的包
  • shared(公用辅助方法,宿主环境无关)

实现jsx方法

包括:

  • jsxDEV方法(dev环境)
  • jsx方法(prod环境)
  • React.createElement方法

实现打包流程

对应上述两3方法,打包对应文件:

  • react/jsx-dev-runtime.js(dev环境)

  • react/jsx-rumtime.js(prod环境)

  • React

打包流程中需要安装的rollup pluginnode包:

pnpm i -D -w rimraf rollup-plugin-generate-package-json rollup-plugin-typescript2 @rollup/plugin-commonjs

标签:宿主,plugin,环境,rollup,第三天,react,手写,jsx
From: https://www.cnblogs.com/libertylhy/p/17177849.html

相关文章

  • React.memo 解决函数组件重复渲染
    为什么会存在重复渲染?react在v16.8版本引入了全新的api,叫做ReactHooks,它的使用与以往基于classcomponent的组件用法非常的不一样,不再是基于类,而是基于函数进行......
  • React-crm的权限管理总结
    引言最近在写react-redux的后台管理系统,我觉得权限管理挺重要的,在此总结一下。大致流程配置axios,解决代理以调用接口获取数据用户登陆调用接口,获取传入token以允许登......
  • HelloReact
    单页面中使用React在单页面中使用React需要引入三个js:React的核心库、依赖核心库、babel(编译JSX)<scriptcrossoriginsrc="https://unpkg.com/react@16/umd/react.dev......
  • 手写模拟Spring底层原理-Bean的创建与获取
    作者:京东物流张鼎元1引言大家好,相信大家对Spring的底层原理都有一定的了解,这里我们会针对Spring底层原理,在海量的Spring源代码中进行抽丝剥茧手动实现一个Spring简易版......
  • 译文:5个让人惊喜的React库
    译文:5个让人惊喜的React库欧巴菜菜web前端开发​关注  原文链接:https://dev.to/naubit/5-small-and-hidden-react-libraries-you-should-a......
  • react使用this.setState给数组中某个对象赋值
    先记录一下正确写法const{payTypeList}=this.state;lettemp=payTypeListdat.openFlag=type//这一句是必须的,不然状态无法更改temp.map((i......
  • React+ReactToolKit中,如何在组件外部访问Redux的store,Uncaught ReferenceError: Cann
    之前在项目开发中,遇到一个问题,需要在axios的二次封装文件中,进行拦截,需要使用到redux的dispath派发但是在axios封装的文件中,直接引入store,出现了如下报错:UncaughtReferen......
  • 完整手写React第二天
    2.实现jsxReact项目结构:react(宿主环境无关的公用方法)react-reconciler(协调器的实现,宿主环境无关)各种宿主环境的包shared(公用辅助方法,宿主环境无关)JSX转换是什么i......
  • 完整手写React第一天
    1.选择Multi-repo还是mono-repoMulti-repo 每个库有自己独立的仓库,逻辑清晰,相对应的,协同管理会更繁琐。  Mono-repo可以很方便的协同管理不同独立的库的生命......
  • #yyds干货盘点 【React工作记录三】React中如何跳转页面传参(参数较短)
     目录​​前言​​​​需求​​​​ 总结​​前言我是歌谣我有个兄弟巅峰的时候排名c站总榜19叫前端小歌谣曾经我花了三年的时间创作了他现在我要用五年的时间超越他......