我正在用“快速反应”建立一个游戏。我需要访问index.jsx文件中的用户id来对控制器执行操作,比如增加用户得分。
我的路由在传递index.pug参数时呈现user_id文件:

//server.js
app.get('/', function (req, res) {
  const userId = req.query.userId
  res.render('index', {userId: userId})
})

然后我可以访问我的pug文件中的userId,如下所示:
// index.pug
body
  div#errors
  #root
  p #{userId} // prints the User Id

现在我需要访问包含react组件的userId文件中的index.jsx参数。
class Cell extends React.Component {
  render() {
      return (
        <button onClick={() => this.props.onClick()}>
          {userId}
        </button>
      )
    }
  }

但那没用,正如我所料。有什么想法吗?

最佳答案

您可以使用window对象
假设在您的.pug文件中

script.
   var userId = '#{userId}'; //assigning pug value to window object.

现在您可以访问userId组件中的react作为window.userId
class Cell extends React.Component {
  render() {
      return (
        <button onClick={() => this.props.onClick()}>
          {window.userId}
        </button>
      )
    }
  }

关于node.js - 将参数从哈巴狗传递给JSX,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41416236/

10-12 12:32