创建第一个React项目

React脚手架

python 复制代码
npx create-react-app react-demo

npx是直接从互联网网上拉最新的脚手架进行创建react

运行React项目

python 复制代码
npm start

若想找到Webpack配置文件

python 复制代码
npm eject

React的基本使用

基本步骤

python 复制代码
导入react和react-dom vue
创建react元素
渲染react元素到页面中

导入

python 复制代码
import React from "react";
import ReactDom from "react-dom"

声明

python 复制代码
const title = React.createElement('h1',null,'hello react')
const element2 = React.createElement('div',{
    id:'demo',
    title:'哈哈'
},
    '我是一段DIV内容'
)

渲染

python 复制代码
const element = ReactDom.render(title,document.getElementById('root'))

渲染复杂结构

python 复制代码
<ul>
	<li>香蕉</li>
	<li>橘子</li>
	<li>苹果</li>
</ul>
python 复制代码
import React from "react";
import ReactDom from "react-dom"

//创建react元素
const react_ul = React.createElement('ul',{className:'list'},
    [
        React.createElement('li',null,'香蕉'),
        React.createElement('li',null,'橘子'),
        React.createElement('li',null,'苹果'),
    ]
    )

// 渲染
ReactDom.render(react_ul,document.getElementById('root'))

在渲染过程中父元素第三个参数代表内容,可以为一个数组,数组里面可以放更多的值进行渲染操作

React18

使用React18创建React的时候,导入ReactDOM进行变更,并且创建发生变化,具体代码如下:

python 复制代码
import React, {Component} from "react";
import ReactDOM from "react-dom/client";

class App extends Component {
    render() {
        return (
            <div>
                <h1>hello world</h1>
            </div>
        );
    }
}

const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<App />);

如果不解决这个问题他会一直产生一个警告,说明他目前使用的是React17

相关推荐
速盾cdn29 分钟前
速盾:网页游戏部署高防服务器有什么优势?
服务器·前端·web安全
小白求学131 分钟前
CSS浮动
前端·css·css3
什么鬼昵称32 分钟前
Pikachu-csrf-CSRF(POST)
前端·csrf
golitter.1 小时前
Vue组件库Element-ui
前端·vue.js·ui
golitter.1 小时前
Ajax和axios简单用法
前端·ajax·okhttp
雷特IT2 小时前
Uncaught TypeError: 0 is not a function的解决方法
前端·javascript
长路 ㅤ   2 小时前
vite学习教程02、vite+vue2配置环境变量
前端·vite·环境变量·跨环境配置
亚里士多没有德7752 小时前
强制删除了windows自带的edge浏览器,重装不了怎么办【已解决】
前端·edge
micro2010142 小时前
Microsoft Edge 离线安装包制作或获取方法和下载地址分享
前端·edge
.生产的驴2 小时前
Electron Vue框架环境搭建 Vue3环境搭建
java·前端·vue.js·spring boot·后端·electron·ecmascript