创建了一个简单的脚本来尝试呈现nunjucks模板(联系人内容和布局模板都位于src
目录中:
let fs = require('fs');
let nj = require('nunjucks');
var contact = fs.readFileSync('./src/contact.html','utf8');
nj.configure('src');
let result = nj.render(contact);
console.log(result);
联系方式如下:
{% set title = 'Contact' %}
{% extends '_layout.html' %}
{% block content %}
<h1>Test Template</h1>
{% endblock %}
布局模板如下:
<!DOCTYPE>
<html>
<head>
<title>{{ title }}</title>
</head>
<body>
{% block content %}
{% endblock %}
</body>
</html>
运行脚本时,它将引发:
Error: template not found: {% set title = 'Contact' %}
{% extends '_layout.html' %}
{% block content %}
<h1>Test Template</h1>
{% endblock %}
答案 0 :(得分:0)
我使用的API错误。与其读文件并告诉Nunjucks渲染它,不如这样做:
nj.configure('src');
let result = nj.render('contact.html');
contact.html
和_template.html
文件位于src
目录中。几乎太容易了:)