簡體   English   中英

使用jade模板在Express.js中使用公開的對象作為值或幫助程序?

[英]Using an exposed object as value or helper in Express.js with jade templating?

我正在公開(用於測試目的)一個對象和一個命名函數:

var express = require('express')
  , expose  = require('express-expose')
  , app     = express();

// ...

// Expose with 'utils' namespace, default 'javascript' buffer
app.expose({ foo: 'bar' }, 'utils');

// Expose named function with 'funcs' buffer
app.expose(function foo() { return 'bar'; }, 'funcs');

JavaScript變量創建得很好:

doctype 5
html(lang="en")
    head
        meta(charset='utf-8')
        title
        // Buffer 'javascript'
        script!= javascript
        // Buffer 'funcs'
        script!= funcs
    body

輸出:

<!-- Buffer 'javascript'-->
<script>
    window.utils = window.utils || {};
    utils["foo"] = "bar";
</script>
<!-- Buffer 'funcs'-->
<script>
    function foo() { return 'bar'; }
</script>

但我想訪問對象{ foo: 'bar' }function foo() { return 'bar'; } function foo() { return 'bar'; }從里面翡翠。 根據express.expose兩個都可以在Jade ...但在哪里?

您可以通過將本地區域添加到app.locals來將其添加到您的jade模板應用程序中。

app.locals.foo = function foo() { return 'bar'; }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM