react
介绍React的入门讲解(一)
大家好,我是
小超
同学。最近我正在学习React
、阅读JS
文档,并整理Node
的笔记。对于React
,这是我学习的第三个框架,我觉得相对于Vue
,React
可能更加注重组件化思想的实践。学习React
的过程中,我深刻体会到了组件化思想的重要性,也对React
的生命周期有了更深刻的理解。如果有任何错误,请务必指出并交流。
祝愿你生活明朗,万物可爱!🌞🌻
这是 React 的官方网站,很多问题都可以在官方文档中找到解决方案,因此学会查阅文档非常重要。
整几个面试题来认识一下~~
什么是 React ?
React 是一个用于构建用户界面的 JavaScript 库。
React 有什么特点?
React 的一些主要优点?
首先需要引入几个 React 包:
我直接用官方的库而没有下载到本地:
jsx <!-- 引入react核心库 -->
<script src="https://unpkg.com/react@17/umd/react.development.js" crossorigin></script>
<!-- 引入react-dom,用于支持react操作DOM -->
<script src="https://unpkg.com/react-dom@17/umd/react-dom.development.js" crossorigin></script>
<!-- 引入babel,用于将jsx转为js -->
<script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script>
jsx//1.创建虚拟DOM
const VDOM = <h1>Hello,React</h1>/*此处一定不要写引号,因为不是字符串*/
//2.渲染處拟DOM到页面
ReactDOM.render(VDOM, document.getElementById("example"))
jsx //1.创建虚拟DOM,创建嵌套格式的dom
const VDOM=React.createElement('h1',{id:'title'},React.createElement('span',{},'hello,React'))
//2.渲染虚拟DOM到页面
ReactDOM.render(VDOM, document.getElementById("example"))
jsx//1.创建虚拟DOM
const VDOM = ( /* 此处一定不要写引号,因为不是字符串 */
<h1 id="title">
<span>Hello,React</span>
</h1>
)
//2.渲染虚拟DOM到页面
ReactDOM.render(VDOM, document.getElementById("example"))
js 的写法并不是常用的,常用jsx来写,毕竟JSX更符合书写的习惯
“”
引号{}
jsxid = {myIdÏ}
className
style
属性中使用 {{key: value}}
的形式来书写。jsxstyle={{color:'skyblue',fontSize:'24px'}}
记几个
写在花括号里
jsxReactDOM.render(
<div>
<h1>学超</h1>
{/*注释...*/}
</div>,
document.getElementById('example')
);
JSX 允许在模板中插入数组,数组自动展开全部成员
jsxvar arr = [
<h1>小丞</h1>,Ï
<h2>同学</h2>,
];
ReactDOM.render(
<div>{arr}</div>,
document.getElementById('example')
);
根据动态数据生成 li
html<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>hello_react</title>
</head>
<body>
<!-- 准备好一个 “容器” -->
<div id="example"></div>
<!-- 引入react核心库 -->
<script src="https://unpkg.com/react@17/umd/react.development.js" crossorigin></script>
<!-- 引入react-dom,用于支持react操作DOM -->
<script src="https://unpkg.com/react-dom@17/umd/react-dom.development.js" crossorigin></script>
<!-- 引入babel,用于将jsx转为js -->
<script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script>
<script type="text/babel">
/*
注意区分:【js语句(代码)】与【js表达式】
1. js表达式:一个表达式会产生一个值,可以放在任何一个需要值的地方。
下面这些都是表达式:
(1)a
(2) arr.map()
(3) function fn(){}
2. js语句(代码):代码中会产生一个结果,但不一定会放在需要值的地方。
下面这些都是语句(代码):
(1) if(){}
(2) for(){}
(3) switch(){}
*/
// 模拟一些数据
const VDMData = [
{ name: 'Angular', id: 1 },
{ name: 'React', id: 2 },
{ name: 'Vue', id: 3 }
]
//1.创建虚拟DOM
const VDOM = (
<div>
<h1>前端JS框架列表</h1>
<ul>
{
VDMData.map(item => {
return <li key={item.id}>{item.name}</li>
})
}
</ul>
</div>
)
// 2. 渲染處拟DOM到页面
ReactDOM.render(VDOM, document.getElementById("example"))
</script>
</body>
</html>
本文作者:LiuXueChao
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!