0

我正在尝试设置 create-inferno-app 的服务器端实现。所以,我最初运行 create-inferno-app 来创建一个示例项目并运行npm start run,一切看起来都很好。这是我的index.js

import { render } from 'inferno';
import App from './App';
render(<App />, document.getElementById('root'));

这是App.js

import { renderToString } from 'inferno-server';
import './App.css';

const App = function({ color = 'red', name }) {
  return (
    <div style={{ color }}>
      Hello
      <span>{name}</span>
    </div>
  );
}
export default renderToString(<App color="blue" name="world" />)

我收到一个错误TypeError: type is not a function

那么我应该如何使用renderToStringcreate-inferno-app 中的方法呢?

4

1 回答 1

0

import App from './App';export default renderToString(<App color="blue" name="world" />)从您的 app.js导入的。

你希望你的文件是这样的:

index.js

import { render } from 'inferno';
import App from './App';
render(<App />, document.getElementById('root'));

应用程序.js

import './App.css';

App = function({ color = 'red', name }) {
  return (
    <div style={{ color }}>
      Hello
      <span>{name}</span>
    </div>
  );
}
export default App

服务器.js

import { renderToString } from 'inferno-server';
import App from './App';
cosnt appAsString = renderToString(<App color="blue" name="world" />)
于 2018-02-13T15:06:34.567 回答