• Как очистить форму после выполнения?

    theobroma
    @theobroma
    javascript developer (ReactJS)
    После Date.now() следующий в очереди :
    uuid: function () {
    			var i, random;
    			var uuid = '';
    
    			for (i = 0; i < 32; i++) {
    				random = Math.random() * 16 | 0;
    				if (i === 8 || i === 12 || i === 16 || i === 20) {
    					uuid += '-';
    				}
    				uuid += (i === 12 ? 4 : (i === 16 ? (random & 3 | 8) : random))
    					.toString(16);
    			}
    
    			return uuid;
    		},

    Взято с todomvc.com
    Ответ написан
    Комментировать
  • Как очистить форму после выполнения?

    maxfarseer
    @maxfarseer
    https://maxpfrontend.ru, обучаю реакту и компании
    Для генерации id использую библиотечку node-uuid
    Например:
    import { v4 } from 'node-uuid'
    ...
    const myId = v4()
    ...
    Ответ написан
    Комментировать
  • Как очистить форму после выполнения?

    @fayster
    Сохраняйте изменение элементов формы в состоянии дочернего компонента, а потом просто отправляйте состояние и после очищайте его:
    function getDefaultState() {
    	return {
    		title: '',
    		year: '',
    		format: '',
    		actors: ''
    	};
    }
    
    export default React.createClass({
    	handleFilmAdd() {
        this.props.onFilmAdd({
    			id: 'some_id',
    			...this.state
    		});
    
    		this.setState(getDefaultState());
      },
    
    	handleChange(field, value) {
    		this.setState({
    			[field]: value
    		});
    	}
    
      render() {
        return (
        	<div>
           <input
            value={this.state.title}
    				onChange={this.handleChange.bind(this, 'title')}
            placeholder='Title'
            ref='addTitle'
          />
          	<input
            value={this.state.year}
    				onChange={this.handleChange.bind(this, 'year')}
            placeholder='Release Year'
            ref='addYear'
          />
            <input
            value={this.state.format}
    				onChange={this.handleChange.bind(this, 'format')}
            placeholder='Format'
            ref='addFormat'
          />
          <textarea
    	      value={this.state.actors}
    				onChange={this.handleChange.bind(this, 'actors')}
    	      placeholder='Actors'
    	      ref='addActors'>
          </textarea>
          <button onClick={this.handleFilmAdd}>Add</button>
          </div>
        );
      }
    });
    Ответ написан
    5 комментариев