JSX语法基础

基础

混合js和html语法格式
1.返回的时候必须是一个根节点
2.class类名,要写成className
3.{}执行js代码
4.样式会自动的展开
5.数组里面可以执行html标签

  • 例如 let arr[<p>啦啦</p>,...]
    6.注释{/注释内容/}

组件

js组件 class组件 function组件

=== class组件

import React,{Component} from 'react'
export default class Child extends Component{ 
  render(){ return (<div>{this.props.children}</div>)} 
 }

=== function组件

function MyTag({children}){
return (<h1>函数组件{children}</h1>)
}

当导入组件时,只填写文件,会自动去查找文件夹index.js

state和props区别

state和props主要的区别在于props是不可变的,而state可以根据与用户交互来改变。这就是为什么有些容器组件需要定义state来更新和修改数据。而
子组件只能通过props来传递数据。

props

1.props的默认值设置:
Child.defaultProps= {age:20}
2.props参数传入:
<Child age="30">
3.props参数使用:
在child使用{this.props.age}
4.props属性只读不修改

state状态

1.初始:
constructor(props){ super(props); this.state={name:"han",age:18} }
2.使用:
{this.state.age}
3.更新:
this.setState({age:80})
更新state dom节点也会更新

表单数据绑定和双向绑定

<input balue={this.state.msg} onChange={e=>{this.setState({msg:e.target.value})}}>

函数组件与class组件区别:

函数组件没有state,也没有this;

react如何响应事件

1.事件驼峰式:onClick onChange
2.事件中的this:
onclick={()=>{this.showMsg()}}修改事件方法中的this指向;
onclick={this.showMsg.bind(this)}修改this
默认事件中的this为当前的元素

生命周期钩子函数

定义:react组件从创建到销毁 更新都会有一系列的回调函数,我们把这些回调函数,称为生命周期钩子函数;

  • constructor 组件的构造器
  • componentWillMount 组件即将渲染
  • render 渲染 多次
  • componentDidMount 组件已经渲染,可以启用ajax请求,启用定时器
  • componentWillUnmount 组件即将卸载,可以销毁定时器
  • componentWillUpdate 组件即将更新
  • componentDidUpdate 组件已经更新
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • JSX 语法 说明: jsx语法html代码和js代码可以混写而不需要加引号,可以这样做的原因是React和到js...
    Artifacts阅读 3,655评论 0 0
  • 一、注释 写在JSX的HTML标签里的注释格式应包裹在{}里,即为: 二、类名属性 以下都会用到的CSS文件:/s...
    Lia代码猪崽阅读 1,332评论 0 0
  • 求值表达式 要使用 JavaScript 表达式作为属性值,只需把这个表达式用一对大括号 ( { } ) 包起来。...
    Artifacts阅读 2,472评论 0 0
  • 前端开发面试题 面试题目: 根据你的等级和职位的变化,入门级到专家级,广度和深度都会有所增加。 题目类型: 理论知...
    怡宝丶阅读 7,372评论 0 7
  • 40、React 什么是React?React 是一个用于构建用户界面的框架(采用的是MVC模式):集中处理VIE...
    萌妹撒阅读 4,678评论 0 1