Sign in Go Pro

Build a React Native Application

Reacting to Input Events with React Native Controlled Components

This lesson is for PRO members.

Upgrade today to get access to all the PRO lessons.

Unlock this lesson
Autoplay

Up next

Previous

About

Once a user enters data (in a text box for example), we have to be able to read what they just wrote in order to use that input to do something.

To do this in our application, we'll use a concept called Controlled Components.

"Controlling" a component just means listening to every input change, and recording that in state. Then, directly setting the value of that component to the value in state. This is the most flexible way to control and manage user input.

Summary of Content:

  • Adding a TextInput to let users type in new todo items
  • "Controlling" that input using onChangeText and value
  • Using that input later; when the user presses a button
  • Various ways controlled components can make input processing flexible and powerful

Instructor

Links

Comments

Hi, for those who face any issue(like insertion of '-' and '()' character when pressing back button and text count comes again to 8 and 3 respectively) example format is (111)111-111.
I made a solution for this case, please suggest the better way if there is any.

Solution:

Change the state to this:

state = {
text: '',
validateCount: -1
}

Some modification in setText() function:

if (text.length==0) {
this.setState({validateCount: -1})
}

if(this.state.validateCount < 1 && text.length === 3){
this.setState({validateCount: (this.state.validateCount+1)})
text = (${text})
}

if (this.state.validateCount < 1 && text.length === 8) {
this.setState({validateCount: (this.state.validateCount+1)})
text = ${text}-
}
console.log("state:",this.state);
this.setState({ text })

>
You need to go PRO to post comments.

Lessons in Build a React Native Application

1. Installing React Native and Creating Your First React Native App
02:17
Chris Achard
2. Editing the React Native Component to Display Data on the UI
03:20
Chris Achard
3. Extracting and Writing React Native Components
03:23
Chris Achard
4. Debugging Errors in React Native
03:41
Chris Achard
5. Reuse Components with Props in React Native
01:57
Chris Achard
6. Make React Native Components Dynamic with State
03:11
Chris Achard
7. Dynamically Rendering Components in React Native
Pro
01:28
Chris Achard
8. Rendering Lists in React Native with ScrollView and FlatList
Pro
02:06
Chris Achard
9. Styling React Native Components
Pro
04:18
Chris Achard
10. Layout Components in React Native with Flexbox
Pro
03:28
Chris Achard
11. Installing and Using Third Party React Native Libraries
Pro
03:31
Chris Achard
12. React Native Routing and Navigation with the React Navigation Library
Pro
03:48
Chris Achard
13. Reacting to Input Events with React Native Controlled Components
Pro
02:23
Chris Achard
14. Setting State in React Native with setState
Pro
03:03
Chris Achard
15. Exploring Lifecycle Methods in React Native
Pro
02:18
Chris Achard
16. Consuming a Node.js HTTP API in React Native
Pro
05:16
Chris Achard
17. Displaying Images and Icons in React Native
Pro
04:26
Chris Achard
18. Deleting a ToDo Item from a React Native List
Pro
01:31
Chris Achard
19. Refactoring Network Code into a React Native Shared Library
Pro
01:38
Chris Achard
20. Platform Specific React Native Code and Styles
Pro
03:13
Chris Achard
21. Filtering Data with a React Native Segment Component
Pro
02:01
Chris Achard
22. Deploying a React Native Application to a iOS or Android Device
Pro
02:17
Chris Achard
23. Building a React Native Android APK for Google Play
Pro
02:12
Chris Achard
24. Building a React Native iOS IPA file for the App Store
Pro
01:29
Chris Achard