2017-08-30 108 views
0
import React from 'react'; 
import { render } from 'react-dom'; 
import { BrowserRouter as Router, Route } from 'react-router-dom'; 

import Header from './components/header'; 
import Body from './components/body'; 
import Archive from './components/archive'; 
import Settings from './components/settings'; 

import './assets/css/style.css'; 

const wrapper = <Router> 
     <div> 
     <Header/> 
     <Route exact path="/" component={Body}/> 
     <Route path="/archive" component={Archive}/> 
     <Route path="/label/work" component={Settings}/> 
     <Route path="/settings" component={Settings}/> 
     </div> 
</Router>; 

render(wrapper, document.getElementById('app')); 

在上面的代碼中,Body組件以開發模式呈現。 但是,當我在生產中運行相同的代碼生成身體組件不呈現。在生產版本中未渲染的反應路由組件

輸出:

發展模式:身體成分呈現

enter image description here

生產體形:身體在這個例子中in documentation

enter image description here

+0

沒有任何錯誤控制檯上生產版本? – bennygenel

+0

@BünyaminBennyGenel沒有控制檯錯誤 – Abhishek

+0

你可以嘗試使用'const wrapper =()=>(//你的代碼在這裏)包裝包裝常量;' – bennygenel

回答

0

看不渲染

組件

嘗試用無狀態組件更換包裝:

const wrapper =() => (
    <Router> 
     <div> 
     <Header/> 
     <Route exact path="/" component={Body}/> 
     <Route path="/archive" component={Archive}/> 
     <Route path="/label/work" component={Settings}/> 
     <Route path="/settings" component={Settings}/> 
     </div> 
    </Router> 
); 
+0

無狀態組件是什麼意思? – Abhishek

+1

它的一個功能組件(就像這個答案中的一個),它的構造函數中沒有任何狀態。當你有這種情況時,你可以用這種方式定義一個組件,它只會有渲染功能。它們也被稱爲* dumb *組件。 –

+0

@echuve仍然沒有渲染。 – Abhishek