在进行服务器端渲染时如何将数据导入React?

时间:2016-06-14 13:26:15

标签: express reactjs

我有一个用户可以登录的网络应用程序。 用户登录后,使用Express和Passport进行身份验证。

成功验证用户身份后的代码如下所示。

router.get("/", function(req, res) {
  res.render("index", { user: req.user });
});

现在,用户的数据存储在user中,因此,如果我想在索引页面上呈现用户的电子邮件,我可以通过user.email执行此操作。到目前为止没有问题。

我使用React.js作为我选择的Javascript库,问题出现在这里。

让我们说我希望在用户登录后通过React.js在索引页面上显示用户的电子邮件,因此我的代码最终如下所示。

var HelloMessage = React.createClass({
  render: function() {
    return (
      <p>
        Your current email is {this.props.email}.
      </p>
    );
  }
});

ReactDOM.render(<HelloMessage email={user.email} />, document.getElementById('hello'));

我的意图是,我可以像在没有React.js的索引页面上检索一样检索用户的电子邮件。所以,我把user.email作为我的电子邮件道具,但这显然不起作用。它最终返回错误消息Uncaught ReferenceError: user is not defined。有谁知道如何使用React.js检索电子邮件的数据?

0 个答案:

没有答案