在 Web 开发中,使用模板引擎可以更加方便地实现页面渲染以及数据的展示。而 Fastify 是一个非常流行的 Node.js 的 Web 开发框架,本文将讲解如何在 Fastify 中使用模板引擎来完成 Web 开发。
安装模板引擎插件
在 Fastify 中使用模板引擎需要安装相应的插件。这里我们使用 point-of-view
插件,它能够支持众多模板引擎,如 Handlebars、Pug 等。
首先,你需要安装 point-of-view
插件:
npm install point-of-view --save
注册模板引擎插件
在使用模板引擎之前,需要将插件注册到 Fastify 中。在 Fastify 中,插件的注册使用 register
方法实现。在本例中,以下代码会注册 Pug 模板引擎:
const pointOfView = require('point-of-view') const pug = require('pug') fastify.register(pointOfView, { engine: { pug }, templates: 'views' })
这里我们使用 pug
作为模板引擎,并指定了模板文件所在的目录 views
。
创建模板
创建模板是使用模板引擎的核心部分。在本例中,我们创建一个简单的 Pug 模板文件,其中包含一个简单的表格。
// javascriptcn.com 代码示例 html head title= title body table tr th Name th Age each user in users tr td= user.name td= user.age
渲染模板
渲染模板是使用模板引擎的最后一步。在 Fastify 中,使用 reply.view
方法实现。
// javascriptcn.com 代码示例 fastify.get('/', function (request, reply) { reply.view('index', { title: 'Users', users: [ { name: 'Alice', age: 23 }, { name: 'Bob', age: 25 }, { name: 'Charlie', age: 27 } ] }) })
在这个例子中,我们使用 reply.view
渲染模板 index.pug
,并向模板传递了一个包含 title 和 users 的对象。
完整示例代码
// javascriptcn.com 代码示例 const fastify = require('fastify')() const pointOfView = require('point-of-view') const pug = require('pug') fastify.register(pointOfView, { engine: { pug }, templates: 'views' }) fastify.get('/', function (request, reply) { reply.view('index', { title: 'Users', users: [ { name: 'Alice', age: 23 }, { name: 'Bob', age: 25 }, { name: 'Charlie', age: 27 } ] }) }) fastify.listen(3000, function (err, address) { if (err) { console.error(err) process.exit(1) } console.log(`server listening on ${address}`) })
总结
本文讲解了如何在 Fastify 中使用模板引擎。通过上述步骤可以轻松创建、渲染模板,快速完成 Web 开发。希望对大家有所帮助。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/654f659c7d4982a6eb85a7e4