Le journal des modifications des mentions react-native https://facebook.github.io/react/blog/2015/04/17/react-native-v0.4.html
Compatibilité des modules NPM: Il existe de nombreuses bibliothèques sur NPM qui ne dépendent pas des composants internes des noeuds/navigateurs qui seraient vraiment utiles dans React Native, telles que superagent, soulignement, ...
Mais ça ne marche pas pour moi ... C'est comment je l'installe, via package.json
# package.json
"dependencies": {
"react-native": "*",
"underscore": "^1.8.3"
...
Et je le vois bien dans la dépendance npm
# npm ls
├─┬ [email protected]
| ...
├── [email protected]
└── [email protected]
Et cela fonctionne pour d'autres composants de réaction
C'est comment j'ai besoin
var _ = require('underscore');
Mais ça ne marche pas, _
n'est pas défini
Merci pour tout conseil.
Si vous utilisez le module ES6 (comme dans React Native), la méthode correcte consiste à utiliser l'instruction d'importation:
import _ from 'lodash'
let text = _.isUndefined(route.rightButtonText) ? 'Default value' : route.rightButtonText;
J'utilise lodash (souligné avec plus de choses) comme ceci:
Ajoutez ceci au package.json "lodash": "^3.10.0"
Dans le composant dont vous avez besoin, écrivez simplement: var _ = require('lodash')
Et vous êtes prêt.
Si vous avez besoin de plus d'informations sur lodash lodash
Pour exécuter require avec succès dans React, voici ce que j'ai fait:
Installez un trait de soulignement.
npm install underscore
Définir une dépendance dans package.json
"dependencies": {
"react": "^0.13.*",
"underscore": "^1.8.3"
}
Définissez le trait de soulignement dans la fonction où vous souhaitez l’utiliser.
render() {
let _ = require('underscore')
let buttonStyle = _.clone(button);
}
J'ai trouvé le problème, le problème est
Je ne l'utilise pas
Je le demande juste et essaie de le tester en console.
Quand je l'utilise quelque part, comme _.map([1, 2, 3], function(num){ return num * 3; })
n'importe où.
Ensuite, je le teste dans la console, il nécessite la bibliothèque cette fois.
Je ne suis pas sûr que ce soit le comportement requis ou réactif par NPM?
Lorsque vous n'utilisez pas une bibliothèque, même si vous en avez besoin, cela ne sera plus nécessaire.