使用React Starter Kit,我添加Material UI如下:

npm install material-ui --save

并将以下导入到组件中:
import RaisedButton from 'material-ui/lib/raised-button';

和:
<RaisedButton label="Default" />

我收到以下错误:



根据Material UI的documentation,它说我需要解决三件事:
  • 自动前缀和用户代理
  • process.env.NODE_ENV

  • 我应该输入什么代码以及确切的位置,特别是使用React Starter Kit?

    P.S. this solution对我不起作用:-/

    最佳答案



    如您在MaterialUI documentation页面上看到的

    您需要为服务器和浏览器上下文提供相同的用户代理,就像在文档中看到的那样,但是,我强烈建议您不要提供“所有”用户代理,因为最终会提供很多不必要的代码-用户。

    相反,您可以轻松地遵循MaterialUI文档并传递 http请求 header 中包含的用户代理值。

    使用 Express或koa 服务器

    global.navigator = global.navigator || {};
    global.navigator.userAgent = req.headers['user-agent'] || 'all';
    

    我刚刚在src/server.js中检查了it has been added to the ReactStarterKit(未经测试)
    global.navigator = global.navigator || {};
    global.navigator.userAgent = global.navigator.userAgent || 'all';
    

    关于reactjs - React入门工具包和Material UI : userAgent should be supplied in the muiTheme context for server-side rendering,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35481084/

    10-11 05:47