2017-04-25 12 views
13

की संपत्ति 'पथनाम' नहीं पढ़ सकता है मैंने अभी प्रतिक्रिया सीखना शुरू कर दिया है और इस त्रुटि पर अटक गया है।प्रतिक्रिया राउटर: अपरिभाषित

var React = require('react'); 
var ReactDOM = require('react-dom'); 
var { Route, Router, IndexRoute } = require('react-router'); 
var hashHistory = require('react-router-redux') 

var Main = require('./components/Main'); 

ReactDOM.render(
    <Router history={hashHistory}> 
     <Route path="/" component={Main}> 

     </Route> 
    </Router>, 
    document.getElementById('app') 
); 

ट्यूटोरियल मैं का उपयोग करता है प्रतिक्रिया-रूटर 2.0.0 पीछा कर रहा था, लेकिन मेरे डेस्कटॉप पर मैं 4.1.1 का उपयोग कर रहा:

Uncaught TypeError: Cannot read property 'pathname' of undefined at new Router

यहाँ मेरी कोड है। मैंने परिवर्तनों की खोज करने की कोशिश की लेकिन काम करने वाले समाधान को खोजने में असफल रहा।

"dependencies": { 
"express": "^4.15.2", 
"react": "^15.5.4", 
"react-dom": "^15.5.4", 
"react-router": "^4.1.1", 
"react-router-dom": "^4.1.1", 
"react-router-redux": "^4.0.8" 
+0

प्रतिक्रिया रूटर – WilomGfx

+0

@WilomGfx 4.1.1 के किन संस्करणों को 2.x.x से history अपडेट करके इसका समाधान नहीं होता ... मैं संस्करणों मैं जोड़ा मेरे संपादन में उपयोग –

उत्तर

14

त्रुटि इसलिए है क्योंकि रिएक्ट राउटर v4 में एपीआई बिल्कुल अलग है। आप इस कोशिश कर सकते हैं:

import React from 'react'; 
import ReactDOM from 'react-dom'; 
import { 
    BrowserRouter as Router, 
    Route 
} from 'react-router-dom'; 

const Main =() => <h1>Hello world</h1>; 

ReactDOM.render(
    <Router> 
    <Route path='/' component={Main} /> 
    </Router>, 
    document.getElementById('app') 
); 

आप documentation की समीक्षा जानने के लिए कैसे यह अब काम करता है सकते हैं।

Here मेरे पास रूटिंग एनीमेशन के साथ एक रेपो है।

और here आप एक लाइव डेमो पा सकते हैं।

+0

धन्यवाद! यह बहुत उपयोगी था –

+0

आपका स्वागत है –

संबंधित मुद्दे