要解决“部分在子文件夹中 - handlebars(制造商)”的问题,您需要将Handlebars模板文件和部分文件组织在子文件夹中,并在代码中正确引用它们。
假设您有以下文件结构:
├── views
│ ├── main.handlebars
│ └── partials
│ ├── header.handlebars
│ └── footer.handlebars
└── server.js
在views
文件夹中,有一个main.handlebars
模板文件和一个partials
子文件夹。partials
子文件夹中包含header.handlebars
和footer.handlebars
两个部分文件。
在server.js
文件中,您需要设置Handlebars视图引擎,并为部分文件指定正确的路径。以下是一个示例:
const express = require('express');
const exphbs = require('express-handlebars');
const app = express();
// 设置Handlebars视图引擎
app.engine('handlebars', exphbs());
// 设置视图引擎为Handlebars
app.set('view engine', 'handlebars');
// 设置部分文件的路径
app.set('views', path.join(__dirname, 'views'));
// 路由处理程序
app.get('/', (req, res) => {
res.render('main', {
// 在主模板中引用部分文件
header: 'partials/header',
footer: 'partials/footer'
});
});
// 启动服务器
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
在上面的示例中,我们在主模板main.handlebars
中通过header: 'partials/header'
和footer: 'partials/footer'
来引用部分文件。这些路径是相对于views
文件夹的。
当您在浏览器中访问根URL时,服务器将渲染main.handlebars
模板,并将header.handlebars
和footer.handlebars
部分文件插入到相应的位置。
请根据您的实际文件结构和路径进行调整。