alexayan / dva-ssr

dva server side render (dva 服务器端渲染库)
30 stars 3 forks source link

服务器端发布时的疑问 #3

Closed xhubert closed 7 years ago

xhubert commented 7 years ago

启动ssr服务器端时,由于需要通过客户端的createApproutes,那么发布时,客户端已经是编译好的,这时候有什么好的处理方法么?

alexayan commented 7 years ago

@idpocky createAppro 在服务器端重新定义

import React from 'react';
import dva from 'dva';
import { RouterContext } from 'dva/router';

function createApp(opts, id) {
  const app = dva(opts);

  app.model(require('../src/models/app'));
  app.model(require('../src/models/topic'));
  app.model(require('../src/models/timeline'));

  app.router(({ history, renderProps }) => {
    return <RouterContext {...renderProps} />;
  });
  return app;
}

export default createApp;
const routes = (
  <div>
    <Route path='/' component={Topic} />
    <Route path='/news' component={Timeline} />
    <Route path='/tech' component={Timeline} />
  </div>
);