假設我在我的應用程式中定義了一個變數,并且我想在我的 Pug 模板中使用該變數。如果我不在渲染陳述句中傳遞該變數,Pug 是否可以訪問該變數?
我有一個變數,它的值會定期變化,幾乎在我網站的每個頁面上都能看到。它的每一個頁面都將擴展到相同的模板,因此如果我能夠以某種方式從該模板中訪問該變數,我只需要在一個地方撰寫代碼。我知道我可以在res.render('template', { ... })的locals部分包含這個變數,但這似乎不是一個實用的解決方案,因為我可以在未來添加新的路由。有誰知道我怎樣才能以最整潔、最易讀的方式實作這一目標?
uj5u.com熱心網友回復:
我找到了一個答案這里由tbhaxor提供,張貼出來以備將來有人偶然發現這個問題。
在一些helper.js檔案中定義你的變數/函式并匯出它們。然后在你的index.js檔案中要求該檔案,例如:const helper = require('./helper.js`);所以你現在可以使用:
app.loc.js
app.locals.SOME_NAME = helper.someFunctionOrVariable
這可以通過呼叫 - const result = SOME_NAME();
希望這能幫助到其他人,所有的功勞都歸功于tbhaxor.
。轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/310213.html
標籤:
