react
react
李煊
这个作者很懒,什么都没留下…
展开
-
react-高阶组件
个人理解:高阶组件的目的其实就是复用,手段是代理和继承高阶组件是一个函数,形参是组件,返回也是返回组件。//B是组件类,C是其他参数,这里代表key值,//功能是从localStorage区key出来,传给B//可能有很多组件都需要从本地仓库区不同的东西,所以用这种装饰者模式function A(B,C){ return class extends Compone...原创 2019-03-08 20:57:43 · 139 阅读 · 0 评论 -
react-性能优化
1..使用生产环境版本的库:开发版本的库会有很多警告等不必要的代码,执行npm run build就可以了。2.避免不必要的渲染:在shouldComponentUpdate()方法中判断props和state是否改变,若未改变则无需渲染。有些情况如父组件的props或state改变了,但是子组件其实未改变,若不判断的话会导致子组件一起被渲染。shouldComponentUpdat...原创 2019-03-08 18:07:33 · 111 阅读 · 0 评论 -
react-受控组件
首先介绍受控的概念:div,p等这样的元素可以通过setState来控制div的状态,但是表单元素的状态是不受控的,例如文本输入框,本身的value值是不受state控制的,这就是不受控组件。不受控组件转为受控组件的方法:text,textArea:通过监听onChange()方法,在该方法中setState,然后value属性={this.state.name};import...原创 2019-03-08 17:41:03 · 135 阅读 · 0 评论 -
react-ref
class MyComponent extends React.Component { handleClick() { // 使用原生的 DOM API 获取焦点 this.refs.myInput.focus(); } render() { // 当组件插入到 DOM 后,ref 属性添加一个组件的引用于到 this.refs return ( ...原创 2019-03-08 11:32:35 · 167 阅读 · 0 评论 -
react事件传参
class Popper extends React.Component{ constructor(){ super(); this.state = {name:'Hello world!'}; } preventPop(name, e){ //事件对象e要放在最后 e.preventDefault(); ...原创 2019-03-08 11:13:53 · 111 阅读 · 0 评论 -
react 事件处理
1.所有的事件以驼峰式命名如onClick2.this作用域的问题,直接使用箭头函数可以将该类的实例对象传递过去;若是调用的组件方法,需要使用this.handleClick=this.handleClick.band(this);这句话会创建一个新的函数给handleClick,并把this当做参数传递给函数,因此可以把this的作用域传递过去,如果有其他参数想传递也可以在this后用逗号隔...原创 2019-03-08 11:13:18 · 104 阅读 · 0 评论 -
react-context
context:用于父组件传递参数给子组件,好处是,无论多么深层次的子组件都可以直接获取到父组件设置的context对象。//父组件,最上层的组件import React, { Component,PropTypes } from 'react';import Son from './Son';class App extends Component { getChildCont...转载 2019-03-07 20:41:27 · 110 阅读 · 0 评论 -
react兄弟组件通信
import React from 'react';import ReactDOM from 'react-dom';import 'font-awesome/css/font-awesome.min.css';import './index.css';import './index.scss';class Child_1 extends React.Component { ...转载 2019-03-07 20:09:15 · 389 阅读 · 0 评论 -
props与state的区别
父组件通过props向子组件传递数据。父组件通过item={item}这种方式向子组件传递数据,子组件通过this.props.item 来获取数据。//父组件<ul className="list"> <todos.map((item,index)=>{ return <Item item={item}/> })}<...转载 2019-03-07 19:37:22 · 1269 阅读 · 0 评论 -
react组件与服务器通信
https://blog.csdn.net/ElinaVampire/article/details/51813677component的生命周期图需要关注的是在render执行前后执行的componentWillMount(),componentDidMount(); 属性props改变执行的componentWillReceivePros(nextPros); state或pro...原创 2019-03-01 19:46:03 · 386 阅读 · 0 评论