-
Notifications
You must be signed in to change notification settings - Fork 3
CardDescribeInputs
Marcin Kostrzewski edited this page Jun 5, 2021
·
1 revision
Komponent posiada stan fieldsetHover
, który pomaga przy schowaniu komponentu gdy klikniemy poza obszar formularza.
state = {
fieldsetHover: false,
}
Ustawia stan fieldsetHover
na true
.
hoverTrue = () => {
this.setState({fieldsetHover: true});
}
Ustawia stan fieldsetHover
na false
.
hoverFalse = () => {
this.setState({fieldsetHover: false});
}
Wywołuje handler z komponentu rodzica, który sprawia że nasz komponent CardDescribeInputs znika, pod warunkiem, że myszka nie jest w obszarze formularza (czyli tego naszego komponentu CardDescribeInputs).
handleHiding = (event) => {
if(!this.state.fieldsetHover)
this.props.hideDescribeInputsHandler(event);
}
render() {
return (
<TransparentBack show={this.props.show} onClick={this.handleHiding}>
<Fieldset onMouseEnter={this.hoverTrue} onMouseLeave={this.hoverFalse}>
<Legend>
Karta
</Legend>
<Div>
<Label htmlFor='cardName'>
Nazwa
</Label>
<DivInput>
<Input id='cardName' name='cardName' type='text' onChange={this.props.updateDescribePreview}/>
</DivInput>
</Div>
<Div>
<Label htmlFor='cardSubject'>
Przedmiot
</Label>
<DivInput>
<Input id='cardSubject' name='cardSubject' type='text'
onChange={this.props.updateDescribePreview}/>
</DivInput>
</Div>
<Div last>
<Label htmlFor='cardTooltip'>
Opis
</Label>
<DivInput>
<Input id='cardTooltip' name='cardTooltip' type='text'
onChange={this.props.updateDescribePreview}/>
</DivInput>
</Div>
</Fieldset>
</TransparentBack>
);
}
TransparentBack to kontener z przezroczystym czarnym tłem, jak klikniemy na ten obszar poza formularzem, to
komponent CardDescribeInputs zniknie.
Dzięki onChange
w elementach <Input />
aktualizuje się treść z komponentu CardDescribePreview.
WMI Adventure
Dokumentacja
- System punktów
- API
- Backend
-
Frontend
- Struktura plików
- Komponenty:
-
Komponent CardsCreator
- Atoms:
- Organisms:
-
Komponent CardsCreator