React component API
In this section we will discuss the React component API. We will explain the following seven methods:
Set status:
setState
Replacement status:
replaceState
Set the properties:
setProps
Replace attributes:
replaceProps
Force updates:
forceUpdate
Get the DOM node:
findDOMNode
Determine the mount status of the component:
isMounted
Set status: setState
setState(object nextState[, function callback])
Parameter description
nextState
new state to be set, which will be the same as the currentstate
merge.callback
optional parameters, callback function. The function will be found in thesetState
set up successfully and the component is called after re-rendering.
Merge nextState
and current state
and re-render the component setState
is the main way to trigger UI updates in React event handlers and request callbacks.
About setState
Cannot be passed within the component this.state
modify the state because it will be called setState()
and then replaced.
setState()
doesn’t change immediately. this.state
instead, create a soon-to-be processed state
. setState()
it is not necessarily synchronous, and React will execute in batches to improve performance. state
and DOM rendering.
setState()
always triggers a component redrawing, unless in the shouldComponentUpdate()
some conditional rendering logic is implemented in.
Example
React instance
classCounterextendsReact.Component{constructor(props){super(props);this.state=
{clickCount:0};this.handleClick=this.handleClick.bind(this);}handleClick()
{this.setState(function(state){return{clickCount:state.clickCount+1};});}render()
{return(<h2onClick={this.handleClick}>Click me! The number of clicks is:{this.state.clickCount}</h2>);}}
ReactDOM.render(<Counter/>,document.getElementById('example'));
In the example, the click counter is increased by 1 by clicking the H2 tab.
Replacement status: replaceState
replaceState(object nextState[, function callback])
nextState
the new state to be set, which replaces the currentstate
.callback
optional parameters, callback function. The function will be found in thereplaceState
set up successfully and the component is called after re-rendering.
replaceState()
methods and setState()
similar, but the method only retains nextState
in state, original state
not here nextState
all the states in the are deleted.
Set property: setProps
setProps(object nextProps[, function callback])
nextProps
the new property to be set, the state will be the same as the currentprops
mergecallback
optional parameters, callback function. The function will be found in thesetProps
set up successfully and the component is called after re-rendering.
Set the component properties and re-render the component.
props
is equivalent to the data flow of a component, which is always passed down from the parent component to all child components. When integrating with an external JavaScript application, we may need to pass data or notification to the component React.render()
components need tobe re-rendered, and you can use the setProps()
.
Update the component so that I can call it again on the node React.render()
can also be done through setProps()
method to change the properties of the component and trigger the component to re-render.
Replace attributes: replaceProps
replaceProps(object nextProps[, function callback])
nextProps
the new property to be set, which replaces the currentprops
.callback
optional parameters, callback function. The function will be found in thereplaceProps
set up successfully and the component is called after re-rendering.
replaceProps()
methods and setProps
similar, but it deletes the original props
.
Force updates: forceUpdate
forceUpdate([function callback])
Parameter description
callback
optional parameters, callback function. This function will be used in the componentrender()
called after the method is called.
forceUpdate()
method causes the component to call its own render()
method to re-render the component, and the component’s child components also call their own render()
. However, when the component renders again, it still reads the this.props
and this.state
if the state does notchange, React will only update the DOM
forceUpdate()
method is applicable to this.props
and this.state
redraw components other than (e. G. modified this.state
. This method notifies React that it needs to call render()
Generally speaking, you should try to avoid using forceUpdate()
and only from this.props
and this.state
read the status in and triggered by React render()
call.
Get DOM node: findDOMNode
DOMElement findDOMNode()
Return value: DOM element
DOMElement
If the component is already mounted in DOM, the method returns the corresponding local browser DOM element. When render
return null
or false
hour this.findDOMNode()
will also return null
. Thismethod is useful when reading values from DOM, such as getting the value ofa form field and doing some DOM operations.
Determine the mount status of the component: isMounted
bool isMounted()
Return value:
true
orfalse
indicating whether the component has been mounted into the DOM
isMounted()
method is used to determine whether the component has been mounted into the DOM. You can use this method to ensure setState()
and forceUpdate()
calls in asynchronous scenarios do not go wrong.
This article refers to: http://itbilu.com/javascript/react/EkACBdqKe.html