Skip to content

Incomplete text after selecting same item from list. #358

Open
@karussell

Description

When I initially have this URL and type 'hoyersw' in the first input field and click on the first result of the autocomplete, which would be the same text as in the URL (Hoyerswerda - Wojerecy), then the input stays at 'hoyers' instead of 'Hoyerswerda - Wojerecy'

Activity

kriegalex

kriegalex commented on Oct 23, 2023

@kriegalex
Contributor

I have been able to reproduce.

The pattern is always the same :

  1. Select a new input search
  2. The autocomplete works
  3. Empty the cell
  4. Type something that gives the same autocomplete result (props.point.queryText)
  5. Select the same result
  6. Input fields doesn't switch to autocomplete suggestion
  7. Using console.log, we see that useEffect => setText is not triggered to update the text from "input" to "queryText"
kriegalex

kriegalex commented on Oct 23, 2023

@kriegalex
Contributor
if (action instanceof InvalidatePoint) {
  const points = QueryStore.replacePoint(state.queryPoints, {
    ...action.point,
    isInitialized: false,
    queryText: ''
  });
  return {
    ...state,
    queryPoints: points,
  };
} else if (action instanceof ClearPoints) {

Query text must be emptied for the change to be registered by useEffect().

useEffect(() => {
  setText(props.point.queryText);
  console.log('useEffect: '+props.point.queryText);
}, [props.point.queryText]);

Is that correct ? I'm still learning Typescript and web development.

karussell

karussell commented on Oct 30, 2023

@karussell
MemberAuthor

Oh, nice. Indeed the first code you mentioned already fixes the problem and is what we need here, I guess! Feel free to create a pull request or I can mention you in the commit to credit you properly :)

added a commit that references this issue on Dec 3, 2023
122fee6
karussell

karussell commented on Dec 3, 2023

@karussell
MemberAuthor

Unfortunately I had to revert it as it breaks editing the input text: 1. search for something and click the suggestion. 2. click again on the input element and whatever you type the input will be (incorrectly) cleared before it.

kriegalex

kriegalex commented on Dec 4, 2023

@kriegalex
Contributor

Understood. Makes total sense. Next time, I'll mark it as untested explicitely (more like an hint to follow).

added a commit that references this issue on Jun 28, 2024
f45f4c5
added 2 commits that reference this issue on Nov 12, 2024
ec38d6d
90b81c5
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      Incomplete text after selecting same item from list. · Issue #358 · graphhopper/graphhopper-maps