【问题标题】:Pass a value from response.render inside the script tag在 script 标签内传递 response.render 的值
【发布时间】:2017-03-22 10:02:17
【问题描述】:

以下是pug sn-p。我需要在chatConfig 对象中动态填充user

 script.
  var chatConfig = {
    user : 'foo',
    pass : 'bar',
  }

从我的快递,我呈现为

  resp.render('user/index', {username:req.user});

如何将req.user 的值传递给script. 内的user 键?

【问题讨论】:

    标签: javascript node.js express pug


    【解决方案1】:

    Brmmmm 是在正确的轨道上,但是您需要让您的 JavaScript 将变量用作对象,而不是变量。您可以对变量进行字符串化以使其作为 JavaScript 对象工作。

    doctype html
    html(lang='en')
      head
        title Jade
        - var test = {prop1: "Hi there", prop2: "Another test"};
        script(type='text/javascript').
          var test2 = !{JSON.stringify(test)};
          console.log(test2, test2.prop1, typeof test2);
      body
        h1 Jade - template engine
        #container.col
          p I'm some Jade
    

    Live Example;检查浏览器控制台/Codepen 控制台以查看 console.log 语句的输出。

    【讨论】:

    • 对不起,我没有意识到它是一个对象。变量名“用户名”误导了我哈哈。对不起我的错误。
    【解决方案2】:

    我认为应该是这样的:

    script.
      var chatConfig = {
        user : '${username}',
        pass : 'bar',
      }
    

    【讨论】:

    猜你喜欢
    • 2017-04-18
    • 2011-07-14
    • 2015-05-04
    • 1970-01-01
    • 1970-01-01
    • 2011-06-14
    • 1970-01-01
    • 2014-10-11
    相关资源
    最近更新 更多