【问题标题】:Convert ejs snippet to jade将ejs片段转换为玉
【发布时间】:2016-01-18 05:03:22
【问题描述】:

我有一些服务器端 ejs 模板,我正在为我的 node.js/express 应用程序转换为翡翠,但是有一段 ejs 代码我有点不确定如何正确地用翡翠编写。这里是 sn -p。

<script type="text/javascript">
  window.user = <%- user || 'null' %>;
</script>

我尝试在jade中做这样的事情,但显然是错误的,因为用户返回为未定义。

script.
  window.user = user || 'null';

我也尝试过使用三元运算,它不会给出错误但也不会返回用户。

script.
  window.user ? user : 'null';

我基本上有一个服务器控制器传递给服务器模板的用户对象。处理从控制器传递对象到视图的正确方法是什么?我有点后端开发菜鸟,所以如果这是一个愚蠢的问题,我深表歉意。

【问题讨论】:

    标签: javascript node.js express


    【解决方案1】:

    如果用户是假的(null、未定义、空字符串等),这有效:

        script(type='text/javascript').
          window.user = "#{user}" || null;
    

    如果您确定不逃避 users 值,这意味着您可能容易受到 CSS 攻击,您可以使用 !{user} 而不是 #{user}

    我有 bean 在这里尝试 sn-p:http://jade-lang.com/demo/

    【讨论】:

    • 感谢您的提示。那完全奏效了。我没想到你可以直接在脚本中使用 '#{user'}'。
    猜你喜欢
    • 1970-01-01
    • 2019-05-14
    • 2016-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-26
    • 2015-06-21
    相关资源
    最近更新 更多