如何将两个 NJK 模板包含在另一个模板中?

How to include two NJK templates one inside the other?

在这种情况下我有三个模板:

1)主页

2) 模态按钮

3) 过滤形式

过滤形式包含在(2)中,模态按钮n是包含在 (1)!

但是,如果我从 中删除 (3),我会从 NJK 文件夹 中遇到层次结构问题](2) 它是错误的..但是路径是正确的,我意识到它最终从我的 include main 创建了一个位置,即 (2) (1) ...

路径

1) app\backend\src\views\pages\home.njk

2) app\backend\src\views\templates\buttons\modals\filter.njk

3) app\backend\src\views\templates\forms\filters\global.njk

主页中包含模式按钮:

{% include '../templates/buttons/modals/filter.njk' %} 好的

在模态按钮中包含过滤器:

{% include '../templates/forms/filters/global.njk' %} 错误

错误:

Template render error: (C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\app\backend\src\views\pages\home.njk)
  Template render error: (C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\app\backend\src\views\templates\buttons\modals\filter.njk)
  Error: template not found: C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\app\backend\src\views\templates\buttons\templates\forms\filters\global.njk
    at Object._prettifyError (C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\nunjucks\src\lib.js:36:11)
    at C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\nunjucks\src\environment.js:547:19
    at eval (eval at _compile (C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\nunjucks\src\environment.js:617:18), <anonymous>:20:11)
    at C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\nunjucks\src\environment.js:555:11
    at eval (eval at _compile (C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\nunjucks\src\environment.js:617:18), <anonymous>:14:11)
    at createTemplate (C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\nunjucks\src\environment.js:279:11)
    at next (C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\nunjucks\src\lib.js:282:7)
    at handle (C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\nunjucks\src\environment.js:313:11)
    at C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\nunjucks\src\environment.js:323:9
    at next (C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\nunjucks\src\lib.js:280:7)
    at Object.asyncIter (C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\nunjucks\src\lib.js:286:3)
    at Environment.getTemplate (C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\nunjucks\src\environment.js:305:9)
    at eval (eval at _compile (C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\nunjucks\src\environment.js:617:18), <anonymous>:13:5)
    at fn (C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\a-sync-waterfall\index.js:26:24)
    at C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\a-sync-waterfall\index.js:66:22
    at executeSync (C:\Users\THIAGOSAAD\Documents\DEVELOPMENT\NEORIS\ALIANSCE\aliansce-app-analyticals-panel\node_modules\a-sync-waterfall\index.js:8:15)

尝试在初始化时设置 nunjucks 路径:nunjucks.configure(['../views/templates','../views/pages'], [opts]); 并仅使用本地路径 {% include "forms/filters/global.njk" %}