2014-10-26 13 views
5

użyć browserify do wiązki ReactJS i (między innymi) react-router. Ale kiedy patrzę w konsoli, wiadomości ...browserify ReactJS ładowanie dwukrotnie reakcji z routerem

Pobierz React DevTools o lepsze doświadczenie rozwój: http://fb.me/react-devtools

... zjawia dwukrotnie mówi mi (!) że w rzeczywistości działają dwie instancji ReactJS. Jeśli spojrzę w mój przeglądany JS, zobaczyłem źródło ReactJS tylko raz (UPDATED).

Jak można tego uniknąć?

Uwaga: Proszę mi powiedzieć, czy potrzebujesz więcej informacji, dostarczę go.


package.json

"dependencies": { 
    "LiveScript": "^1.3.0", 
    "jquery": "*", 
    "firebase": "*", 
    "react": "0.11.2", 
    "reactfire": "*", 
    "react-router": "*", 
    ... 
} 

Kiedy biegnę npm ls | grep -i react dostaję ...

___ [email protected] 
___ [email protected] 
___ [email protected] 
_ ___ [email protected] 

Więc reagować jest ładowany jako 0.11.2 (prawdopodobnie dwa razy). Spróbuję teraz npm dedupe, zgodnie z sugestią.

+0

Czy możliwe jest, że masz gdzieś stare odwołanie do źródła React hostowanego przez CDN w kodzie HTML? –

+0

Reakcja hostowana przez CDN? Używam ** npm **, aby go pobrać. To nie powinno być problemem, prawda? – xanderiel

Odpowiedz

1

Uruchom npm dedupe. Najprawdopodobniej są to tylko dwie różne wersje łatek.

Nigdy nie należy używać symboli wieloznacznych dla zależności. W przypadku reaktywowania połączenia <0.1 i routera reakcji ^0.9.

+0

ZAKTUALIZOWANO moje pytanie z '' 'npm ls''' Spróbuję odłożyć teraz. – xanderiel

+0

Nie działa! Próbowałem na niego spojrzeć z '' 'npm ls''', gdzie * react * faktycznie pojawił się dwa razy, a następnie' '' npm dedupe'', który usunął duplikat * reaguje *. Ale po zbudowaniu z * browserify * nadal pokazuje '' 'Pobierz DevTools ...' '' dwa razy w konsoli. – xanderiel

+0

Nadal, dobra rada z '' 'npm dedupe' ''. Może dodam też '' 'npm shrinkwrap'''. – xanderiel

1

Sprawdź, czy importujesz, reaguj pod inną nazwą. np

var React = require('react'); 

i

var React = require('React'); 

spowoduje reakcję być importowane poddano dwukrotnie.

Powiązane problemy