1
votes

Est-il possible d'éditer des fichiers dans node_modules de manière permanente?

Je veux éditer et supprimer quelques lignes de code de mes modules de nœuds mais à chaque fois que j'installe nmp mon code sera écrasé. Existe-t-il une solution pour éditer des fichiers dans mes modules de nœuds sans les écraser à chaque fois?

Par exemple, je veux modifier:

underlayColor: 'noir',

de react-native-collapsible (un composant que j'ai installé dans react-native) à:

underlayColor: 'jaune',

Pour le moment, lorsque je npm installerai, il redeviendra noir.


1 commentaires

cela ressemble à le problème XY . Bien sûr, vous n'avez pas réellement besoin de modifier vos modules de nœuds, cela va à l'encontre de la façon dont ils sont censés être utilisés. Vous devriez utiliser un fichier de configuration pour le module (s'il en a un) ou forking (je ne le recommande pas) ou implémenter la fonctionnalité et soumettre une demande d'extraction (yay contribution open source <3) ou trouver une autre bibliothèque.


3 Réponses :


2
votes

Oui, mais pas directement,
Vous devez bifurquer le dépôt, apporter les modifications, le compiler, le valider et le pousser vers votre dépôt, npm install à partir de ce dépôt.

Je suggérerais tout de même de trouver un moyen de le configurer, (exemple: eslint use .eslintrc, karma use karma.config.js, etc.)


0 commentaires

0
votes

Vous pouvez créer un fork du module et y changer le code dans votre dépôt forké. Et puis vous pouvez ajouter ce module au fichier package.json. Vous pouvez simplement mettre l'URL du référentiel Github dans le fichier package.json. vous aurez donc votre propre version du module.


0 commentaires

2
votes

Vous ne devriez pas éditer du code dans les modules de nœuds, car il sera écrasé. Si vous voulez vraiment écraser le code, vous devrez bifurquer le module et publier vous-même la source modifiée. Je ne pense pas que vous vouliez faire ça.

Juste à partir d'un rapide coup d'œil à la documentation de react-native-collapsible, il y a un underlayColor prop sur le composant Accordion (ce que je suppose ) que vous utilisez, ne pouvez-vous pas simplement définir la couleur en passant la couleur souhaitée dans cet accessoire lorsque vous effectuez le rendu du composant.

<Accordion 
  ...
  underlayColor='yellow'
/>


0 commentaires