React router 4 服务器端渲染使用IIS,不是express

React router 4 server-side rendering using IIS, not express

我正在尝试使用 react-router v4 进行服务器端渲染。所有文档都使用 express 服务器,但我使用的是 windows iis。我可以让它在仅客户端渲染上工作,但是当我尝试渲染服务器端时,我收到错误 "hash history needs a dom"。有什么建议吗?

我确定所有内容都已正确导入,因此我将删除以下代码中的导入内容。

代码如下:

const createStoreWithMiddleware = applyMiddleware(ReduxPromise)(createStore);


const someText = <p><strong>Some JSX component</strong><br/>Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.</p>
const simpleContent = (props) => { console.log(props); return (<SimpleContent placeholders={{leftColumn: <Counter data={{title: 'Nested counter'}}/>, rightColumn: <Timer data={{title: 'Nested counter'}}/>}}/>) }

const RouteHub = (props) => {
    return (
        <Provider store={createStoreWithMiddleware(reducers)}>
           <HashRouter>
            <div>
              <h1>Title</h1>
                <ul>
                  <li><Link to="/">Home</Link></li>
                  <li><Link to="/simple">Simple Content</Link></li>
                </ul>
              <Switch>
                <Route exact name="index" path='/' component={simpleContent}/>
                <Route name="simple" path='/simple' component={SimpleContent}/>
              </Switch>
            </div>
          </HashRouter>
        </Provider>
    )
}

export default RouteHub;

错误已通过使用 StaticRouter 而不是 HashRouter 解决。

谢谢egig!