【问题标题】:Using React with ejs?将 React 与 ejs 一起使用?
【发布时间】:2017-01-13 04:12:32
【问题描述】:

我有一个使用 React 状态构建的前端,旨在根据用户操作进行调整。然而,我的前端 React 也意味着显示和允许操作我的服务器端数据。目前我的视图引擎是 EJS,我用它来显示数据。举个广泛的例子:

  return (<div class="col-md-6 col-sm-6 col-xs-7">
    <ul>
      <li><span class="point">Name:</span> <%= user.profile.name %> </li>
      <li><span class="point">Email:</span> <%= user.email %> </li>
    </ul>
  </div>); 

我已经确定我不能将这些 ejs &lt;%= 标签与 React 混合使用。这使得操作数据成为一项挑战。除非我在 jQuery 中重做我的 UI,否则我不确定如何继续。

我查看了this React documentation 以获取传递数据,但在测试时结果不允许我进行跨域调用,并且我的 MongoDB 存储在 MongoLab 上。因此,我只能使用 EJS 来调用我的数据。

由于将 React 与 EJS 一起使用的限制,我很困惑我必须使用哪些解决方案来实现像 React 这样的带有服务器端数据的 UI 工具。

【问题讨论】:

  • 你有 node.js 后端吗?
  • 我设置了 express 环境。
  • 这毫无意义。 React 已经通过 JSX {...} 表示法进行模板化,为什么还需要在此之上进行模板化?花半小时浏览facebook.github.io/react/docs/tutorial.html,这非常值得你花时间,这样你就会明白“客户端与服务器”如何不是 React 应该关注的区别。你让 React 构建 UI。不是其他模板引擎。
  • 如果您想将 React 增量添加到使用 EJS(React 用作​​卖点)的现有大型项目中,这是有意义的。
  • 如果您正在实现生成器并需要模板化的反应组件,这也是有意义的。

标签: javascript reactjs ejs


【解决方案1】:

快递:

res.render('view', {user: myUser});

在应用的 js 包之前的 EJS 中:

<script type='text/javascript'>
  var userFromServer =<%-JSON.stringify(user)%>
</script>

在您的反应代码中使用userFromServer

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-08
    • 2017-10-04
    • 2017-09-02
    • 1970-01-01
    • 1970-01-01
    • 2014-04-16
    • 2021-07-29
    相关资源
    最近更新 更多