React基本概念

倖福魔咒の 提交于 2019-11-28 20:45:49

react起源于Facebook的内部项目(2013年5月开源)

1.特点:

①声明式设计:直接有返回值;

②高效;

③灵活;

④JSX*:是js语法的扩展,可以在js文件中书写html结构;

⑤单向响应的数据流:要改变state中的数据时,需要手动的使页面更新(利用this.setState,后面会介绍他的用法)

⑥组件:react中一切皆为组件

 

之前的node.js是MVC框架,而Vue是MVVM框架(其实,如果没有Vuex那么Vue只是一个MV框架),而React则是一个不完整的MVC/MVVM框架;

react中利用函数化/式编程:也就是说输入一个值,输出的结果是特定的;

 

安装:cnpm install react react-dom -S(其中react用来书写jsx语法,react-dom用来解析jsx语法也就是渲染)

import React from 'react';
import ReactDOM from 'react-dom';
import {HashRouter as Router ,Route} from "react-router-dom"

ReactDOM.render(

        <Router>
             <Route path="/" component={App} /> 
        </Router>
      
     document.getElementById('root'),
    () => {
        console.log("成功")
    });

既然说react中一切皆为组件,那么我们需要写的页面其实也是组件(.js文件),那如何创建一个组件呢

在react中一般通过class类的方式来创建一个组件:class 组件名 extends React.Component{}           //(这里的React是import React from 'react')

在组件内部必须有一个render函数*(他也是react的一个生命周期),并且其内部要返回一个jsx语法;注:一般常见的jsx语法中的input中的value属性需要书写成defaultValue或者给该元素绑定一个onChange事件(这里也说明了在react中绑定事件用事件名进行绑定on后的第一个字母大写:onClick={this.handle.bind(this)},这里可以涉及到一个事件绑定的性能优化

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!