Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 4671 | Rev 6551 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
4675 stevensc 1
/* eslint-disable react/prop-types */
1 www 2
import React from "react";
3
import { useState, useEffect, useRef } from "react";
4675 stevensc 4
import FormErrorFeedback from "../form-error-feedback/FormErrorFeedback";
5
 
6
const UbicationInput = ({ onGetAddress, settedQuery, placeholder = 'Ubicación' }) => {
7
  const [addresObject, setAddressObject] = useState({});
1 www 8
  const [query, setQuery] = useState("");
4675 stevensc 9
  const [error, setError] = useState("");
1 www 10
  const autoCompleteRef = useRef(null);
11
 
12
  useEffect(() => {
4664 stevensc 13
    handleScriptLoad(setQuery, autoCompleteRef, setAddressObject, setError);
4675 stevensc 14
  }, []);
4664 stevensc 15
 
16
  useEffect(() => {
1 www 17
    onGetAddress(addresObject, query);
4675 stevensc 18
  }, [addresObject]);
1 www 19
 
20
  return (
21
    <React.Fragment>
22
      <input
23
        type="text"
24
        id="location_search"
25
        name="location_search"
26
        className="form-control"
1819 steven 27
        placeholder={placeholder}
1 www 28
        ref={autoCompleteRef}
29
        onChange={(event) => {
30
          setAddressObject({});
31
          setQuery(event.target.value);
32
        }}
33
        value={settedQuery ? settedQuery : query}
34
      />
4675 stevensc 35
      {error && <FormErrorFeedback>{error}</FormErrorFeedback>}
1 www 36
    </React.Fragment>
37
  );
38
};
39
 
40
export default UbicationInput;