Jade!= css()和!= js()表示法?

时间:2014-11-08 09:54:45

标签: pug

我正在浏览hackathon-starter的来源,并打开玉器布局模板显示:

layout.jade

doctype html
html
  head
    meta(charset='utf-8')
    meta(http-equiv='X-UA-Compatible', content='IE=edge')
    meta(name='viewport', content='width=device-width, initial-scale=1.0')
    meta(name='description', content='')
    meta(name='csrf-token', content=_csrf)
    meta(name='author', content='')
    title #{title} | Hackathon Starter
    != css('styles')
  body
    include partials/navbar

    .container
      include partials/flash
      block content

    include partials/footer

    != js('application')

我想知道!= css('styles')!= js('application')的含义,因为我在jade文档中找不到任何类似的语法。

1 个答案:

答案 0 :(得分:2)

这是connect-assets

的一部分
  

标记功能

     

connect-assets提供了三个名为jscssassetPath的全局函数。在您的视图中使用它们。它们返回包含最新版本资产(或资产路径)所需的HTML标记,并在可用时利用缓存。例如,在Jade template中,代码

!= css("normalize")
!= js("jquery")
     

(其中!=是Jade运行JS并显示其输出的语法)导致标记

<link rel="stylesheet" href="/css/normalize-[hash].css">
<script src="/js/jquery-[hash].js"></script>