web-dev-qa-db-fra.com

Ignorer node_modules lors de l'utilisation de flux

J'utilise flow dans mon React application native, le démarrage initial du flux est incroyablement lent car il parcourt mon node_modules répertoire. Flow rapporte des masses d'erreurs provenant de ces bibliothèques tierces, que je ne peux pas corriger.

Puis-je dire à flow d'ignorer toutes les erreurs dans node_modules? J'ai ceci dans mon fichier de configuration:

[ignore]
.*/node_modules/.*

Cependant, le flux indique maintenant les lancers react-native Required module not found. Curieusement, cette erreur n'est pas détectée lors de l'importation de React.

17
Dan

Vous pouvez créer un dossier dans la racine de vos projets appelé flow-typed et créez des fichiers de déclaration pour vos modules. Donc, dans ce cas, vous créez le fichier:

flow-typed/react-native.js

// @flow

declare module 'react-native' {
    /* declarations go here... */
}

La raison pour laquelle React ne se plaint pas lorsqu'elle est incluse est que le flux est livré avec des déclarations hors de la boîte ( https://github.com/facebook/flow/blob/master/ lib/react.js ) de la même manière qu'il est fourni avec les déclarations pour les bibliothèques standard javascript et navigateur.

Un mot d'avertissement, cependant, il n'est pas vraiment trivial d'écrire ces fichiers de déclaration. Pour vous inspirer, regardez les déclarations fournies par Flow et celles du référentiel https://github.com/flowtype/flow-typed .

5
AHM