rescript-lang / rescript-lang/rescript-react
Implicit type conversion?
Personne n'a encore pris cette issue.
- Langage dominant
- ReScript
- Étoiles
- 517
- Forks
- 45
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
Hello,
I’m exploring rescript-react and noticed a peculiar behaviour. Here’s my test code:
module MyComponent = {
@react.component
let make = () => {
let (value, setValue) = React.useState(_ => 0)
<>
<div> {React.string(string_of_int(value))} </div>
<input
onChange={evt => {
let x = ReactEvent.Form.target(evt)["value"] // 1
setValue(_ => x) // 2
}}
/>
</>
}
}
What I noticed is that on the line marked with // 1 the type of x is 'a, but on line // 2 hovering over x shows the type int. Why is that? I would expect the compiler to ask me to decode the value of x.
Thank you in advance!
P.S.
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par l’expression ReactEvent.Form.target(evt)["value"] et le setter de useState dans le composant fourni, puis reproduisez le comportement à l’aide du Playground lié. Comparez le résultat avec le fil de discussion du forum lié et déterminez si le type inféré est intentionnel ; le travail est terminé lorsque le comportement est clarifié ou qu’une modification concrète du dépôt est identifiée.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- react
- Domaine
- frontend
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 25/100