【问题标题】:Jade variable rendering inside tag specifications标签规范内的翡翠变量渲染
【发布时间】:2012-03-01 14:06:44
【问题描述】:

我有一个这样的 Jade 页面:

table
    th Site Name
    th Deadline
    th Delete Transaction

    - if (transactions != null)
        each item in transactions
            tr
                td= item.item_name
                td
                    span(id='countdown' + item.timeout + ')= item.timeout
                td
                    span(style='cursor: pointer;', onclick='deleteTransaction("=item.uniqueId")')= "X"

            button(id='confirmButton', onclick='confirm();')Confirm

正如您在span 属性中看到的那样,我尝试以两种不同的方式放置一个局部变量,但它不起作用。关于第一种方式,我收到了token ILLEGAL 错误,而第二种方式只是在我的 JavaScript 中写入了类似deleteTransaction("=item.uniqueId"); 的内容。我知道答案很愚蠢,但 Jade doc 一次又一次(即使它已经改进)对我没有帮助。

谢谢

【问题讨论】:

    标签: node.js pug


    【解决方案1】:

    引用the docs

    假设我们有本地用户{ id: 12, name: 'tobi' },并且我们希望创建一个带有href 指向“/user/12”的锚标记,我们可以使用常规的javascript 连接:

    a(href='/user/' + user.id)= user.name
    

    尔格:

    span(id='countdown' + item.timeout)= item.timeout
    
    // ...
    
    span(style='cursor: pointer;', onclick='deleteTransaction("' + item.uniqueId + '")')= "X"
    

    再次引用:

    或者我们可以使用jade的插值,因为每个使用Ruby或CoffeeScript的人似乎都认为这是合法的js..:

    a(href='/user/#{user.id}')= user.name
    

    所以:

    span(style='cursor: pointer;', onclick='deleteTransaction("#{item.uniqueId}")')= "X"
    

    作为您在编程生活中每天都会用到的一般提示:平衡您的引用。就像括号和圆括号一样,每个引号必须打开一个新引号或关闭一个已经打开的引号(同一种,即双引号关闭双引号,单引号关闭单引号)。借用你的代码:

    span(id='countdown' + item.timeout + ')= item.timeout
      //                                 ^
      //                                 |
      // What's this guy doing? ---------+
    

    即使 Jade 是一种模板语言,也可能不是一种“真正的”编程语言,这条规则就像在 HTML 中一样(也不是一种编程语言),也会很好地为您服务。

    【讨论】:

    • 谢谢,我认为我正确阅读了规范,确实,我在代码中做了一些非常混乱的事情。我想是因为我生病了,我应该在生病的时候停止工作。再次感谢老兄!
    • 是的,喝点橙汁,小睡一会儿。你的大脑也需要休息! :)
    猜你喜欢
    • 1970-01-01
    • 2012-12-17
    • 2013-08-05
    • 1970-01-01
    • 2014-03-19
    • 1970-01-01
    • 2016-08-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多