简体   繁体   English

如何在服务器端渲染ES6方式上管理React组件?

[英]How can I manage react component on server-side render es6 way?

I use react, react-router, babel(es6), webpack and components are rendered both server-side and client-side. 我使用react,react-router,babel(es6),webpack和组件都呈现在服务器端和客户端。

Sometimes I should determine a component is rendered on node or browser. 有时我应该确定一个组件是在节点还是浏览器上呈现的。 isomorphic500 's solution is nice. isomorphic500的解决方案很好。

import React from 'react';
...
if (process.env.BROWSER) {
    require("some.css");
    var someLib = require("only-works-on-browser-lib");
    var BrowserComponent = require("Only-works-on-browser-component")
}

export default class Comp extends React.Component {
    render() {
        var browserComp;
        if (process.env.BROWSER) {
            browserComp = <BrowserComponent />
        } else {
            browserComp = null; 
        }

        return (
            <div>
                {browserComp}
            </div>
        )
    }
}

But I'm looking for more es6 way. 但是我正在寻找更多的es6方法。 Is there better way? 有更好的办法吗?

I would replace all the vars with lets. 我会用let代替所有的变量。 For the most part, everything looks pretty good. 在大多数情况下,一切看起来都不错。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM