textfield input
This commit is contained in:
		
							parent
							
								
									458770e0c4
								
							
						
					
					
						commit
						da29619694
					
				
							
								
								
									
										53
									
								
								src/components/Tutorial/Builder/Textfield.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								src/components/Tutorial/Builder/Textfield.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,53 @@ | |||||||
|  | import React, { Component } from 'react'; | ||||||
|  | import PropTypes from 'prop-types'; | ||||||
|  | import { connect } from 'react-redux'; | ||||||
|  | import { tutorialTitle, changeContent } from '../../../actions/tutorialBuilderActions'; | ||||||
|  | 
 | ||||||
|  | import Button from '@material-ui/core/Button'; | ||||||
|  | import OutlinedInput from '@material-ui/core/OutlinedInput'; | ||||||
|  | import InputLabel from '@material-ui/core/InputLabel'; | ||||||
|  | import FormControl from '@material-ui/core/FormControl'; | ||||||
|  | import FormHelperText from '@material-ui/core/FormHelperText'; | ||||||
|  | 
 | ||||||
|  | class Textfield extends Component { | ||||||
|  | 
 | ||||||
|  |   // handleChange = (e) => {
 | ||||||
|  |   //   var value = e.target.value;
 | ||||||
|  |   //   if(value.replace(/\s/g,'') !== ''){
 | ||||||
|  |   //     this.setState({[e.target.name]: value, error: false});
 | ||||||
|  |   //   }
 | ||||||
|  |   //   else {
 | ||||||
|  |   //     this.setState({[e.target.name]: value, error: true});
 | ||||||
|  |   //   }
 | ||||||
|  |   // };
 | ||||||
|  | 
 | ||||||
|  |   render() { | ||||||
|  |     return ( | ||||||
|  |       <FormControl variant="outlined" fullWidth style={{marginBottom: '10px'}}> | ||||||
|  |         <InputLabel htmlFor={this.props.property}>{this.props.label}</InputLabel> | ||||||
|  |         <OutlinedInput | ||||||
|  |           style={this.props.multiline ? {borderRadius: '25px', padding: '18.5px 14px 18.5px 24px'} : {borderRadius: '25px', padding: '0 0 0 10px'}} | ||||||
|  |           /* error={this.state.error}*/ | ||||||
|  |           value={this.props.value} | ||||||
|  |           label={this.props.label} | ||||||
|  |           id={this.props.property} | ||||||
|  |           multiline={this.props.multiline} | ||||||
|  |           rows={2} | ||||||
|  |           rowsMax={10} | ||||||
|  |           onChange={(e) => {this.props.property === 'title' ? | ||||||
|  |                       this.props.tutorialTitle(e.target.value) | ||||||
|  |                     : this.props.changeContent(this.props.index, this.props.property, e.target.value) | ||||||
|  |                     }} | ||||||
|  |         /> | ||||||
|  |         {/* {this.state.error ? <FormHelperText style={{color: 'red'}}>Gib einen Titel für das Tutorial ein.</FormHelperText> : null}*/} | ||||||
|  |       </FormControl> | ||||||
|  |     ); | ||||||
|  |   }; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | Textfield.propTypes = { | ||||||
|  |   tutorialTitle: PropTypes.func.isRequired, | ||||||
|  |   changeContent: PropTypes.func.isRequired | ||||||
|  | }; | ||||||
|  | 
 | ||||||
|  | export default connect(null, { tutorialTitle, changeContent })(Textfield); | ||||||
| @ -1,45 +0,0 @@ | |||||||
| import React, { Component } from 'react'; |  | ||||||
| 
 |  | ||||||
| import Button from '@material-ui/core/Button'; |  | ||||||
| import OutlinedInput from '@material-ui/core/OutlinedInput'; |  | ||||||
| import InputLabel from '@material-ui/core/InputLabel'; |  | ||||||
| import FormControl from '@material-ui/core/FormControl'; |  | ||||||
| import FormHelperText from '@material-ui/core/FormHelperText'; |  | ||||||
| 
 |  | ||||||
| class Title extends Component { |  | ||||||
| 
 |  | ||||||
|   state = { |  | ||||||
|     title: '', |  | ||||||
|     error: false |  | ||||||
|   } |  | ||||||
| 
 |  | ||||||
|   handleChange = (e) => { |  | ||||||
|     var value = e.target.value; |  | ||||||
|     if(value.replace(/\s/g,'') !== ''){ |  | ||||||
|       this.setState({[e.target.name]: value, error: false}); |  | ||||||
|     } |  | ||||||
|     else { |  | ||||||
|       this.setState({[e.target.name]: value, error: true}); |  | ||||||
|     } |  | ||||||
|   }; |  | ||||||
| 
 |  | ||||||
|   render() { |  | ||||||
|     return ( |  | ||||||
|       <FormControl variant="outlined" fullWidth style={{marginBottom: '10px'}}> |  | ||||||
|         <InputLabel htmlFor="title">Titel</InputLabel> |  | ||||||
|         <OutlinedInput |  | ||||||
|           style={{borderRadius: '25px', padding: '0 0 0 10px'}} |  | ||||||
|           error={this.state.error} |  | ||||||
|           value={this.state.title} |  | ||||||
|           name='title' |  | ||||||
|           label='Titel' |  | ||||||
|           id='title' |  | ||||||
|           onChange={this.handleChange} |  | ||||||
|         /> |  | ||||||
|         {this.state.error ? <FormHelperText style={{color: 'red'}}>Gib einen Titel für das Tutorial ein.</FormHelperText> : null} |  | ||||||
|       </FormControl> |  | ||||||
|     ); |  | ||||||
|   }; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| export default Title; |  | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user