J'essaie de sauvegarder un tableau que je vais chercher à partir d'une API et de l'enregistrer à ressemble à ça:
Les données réelles que je reçois de mon Axios l'appelent ce Voici comment je l'appelle et définissez-le: p> usestate (['']) code>, ce faisant ma première entrée à l'intérieur de mon tableau est vide.
(3) Â ["", "5A5D29230778C1CD47E02DD", "5A5D2F430778C1CD47E02DE"] CODE> P>
(2) Â [ "5A5D29230778C1CD47E02DD", "5A5D2F430778C1CD47E02DE"] CODE> P>
> Argument of type '(favorites: never[]) => any[]' is not assignable to
> parameter of type 'SetStateAction<never[]>'. Type '(favorites:
> never[]) => any[]' is not assignable to type '(prevState: never[]) =>
> never[]'.
> Type 'any[]' is not assignable to type 'never[]'.
> Type 'any' is not assignable to type 'never'.ts(2345)
4 Réponses :
Le premier élément est en réalité votre état par défaut ici: Changer votre déclaration d'état init à usestate (['']) code>.
Vous l'initialisez avec une chaîne vide en tant que valeur et vous l'avez diffusée dans le nouvel état de votre
[... Favoris, ... Data.Favorites] Code> CodeBlock. P>
USESTEZE ([]) CODE> P>
Voulez-vous garder cette valeur de chaîne vide ou non?
Si vous ne le faites pas, vous n'avez pas besoin d'inclure ce qui était dans l'état avant lorsque vous ajoutez les données que vous obtenez avec Axios: P >
setFavorites(() => [...data.favorites])
Définissez son type comme celui-ci:
const [favorites, setFavorites] = useState<string[]>([]); setFavorites(() => [...data.favorites])
Je pense qu'à utiliser SetFavorites ([... Data.Favourites]), puisque il utilise des crochets @utDev
Vous devez définir le type d'usestate pour être Sample Demo P> P> string [] code>
ohh ouais, je me suis concentré sur l'erreur et j'ai complètement manqué l'état initial
... favoris code>. Votre Ajout au tableau existant que vous avez
'' code> déjà. Une raison pour laquelle vous init le tableau avec
'' code>?
@Keith il ne fonctionne pas dans Thypothingscript s'il est vide