react入门实例

本文介绍了React的基础概念,如声明式设计、高效特性和组件化。通过一系列的入门demo,详细讲解了JSX语法、React组件、Props验证、DOM节点操作、状态管理、表单事件、组件生命周期和React中的AJAX请求。每个章节都提供了代码示例,帮助初学者快速掌握React开发。
摘要由CSDN通过智能技术生成
react作为前端框架之一,有着较好的性能,它主要有如下特性:
  • 1.声明式设计 −React采用声明范式,可以轻松描述应用。

  • 2.高效 −React通过对DOM的模拟,最大限度地减少与DOM的交互。

  • 3.灵活 −React可以与已知的库或框架很好地配合。

  • 4.JSX − JSX 是 JavaScript 语法的扩展。React 开发不一定使用 JSX ,但我们建议使用它。

  • 5.组件 − 通过 React 构建组件,使得代码更加容易得到复用,能够很好的应用在大项目的开发中。

  • 6.单向响应的数据流 − React 实现了单向响应的数据流,从而减少了重复代码,这也是它为什么比传统数据绑定更简单。

下面讲一下入门的demo实例(以下14个demo都在https://github.com/TimerYao/react_test)。

一:Hello World

head标签中先要引入三个js文件,react.js (是核心库),react-dom.js (是提供与dom相关的功能),最后是要把JSX语法转化为javascript语法的 browser.js。


<body>
    <div id="example"></div>
	<script type="text/babel">
	      ReactDOM.render(
	        <h1>Hello, world!</h1>,
	        document.getElementById('example')
	      );//把h1标签内容添加到id为example的div中。
	</script>
</body>

ReactDOM.render是react的基本语法,可以将JAX语法转换为html语言,插入相应的DOM节点。

JSX与普通的js有一点不同在于<script>标签的type属性,js是text/javascript,这个是text/babel 。

相同的是可以把这段代码写入独立的一个js文件,然后在html引入即可(type值需要为text/babel )。

<div id="example"></div>
<script type="text/babel" src="helloworld_react.js"></script>
(demo1)运行效果:


我们也可以在浏览器调试页面可以看到

此段代码就是h1标签的内容插入到了id为example的div中。

二:JSX语法介绍

JSX是javascript和XML结合的一种格式,它很灵活,可以将html与javascript混合写,遇到<,就当作HTML解析,遇到{,就当作javascript解析(demo2)

    <script type="text/babel">
	var names = ['China', 'English', 'American'];//定义一个数组
	ReactDOM.render(
	    <div>
		{		    
                        names.map(function (name) {//map() 把每个元素通过函数传递到当前匹配集合中.
		        return <h1>Hello, {name}!</h1>
		    })
		}
	    </div>,
	    document.getElementById('example')
	);
     </script>    
首先我们定义了一个数组,map方法遍历该数组取值传给<h1>标签,然后插入到div中,效果如下:




JSX可以支持直接将javascript表达式,变量等插入模板,示例(demo3)


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值