在NestJs中,可以通过HTML模板引擎来实现使用验证。
npm install --save ejs
render()
方法渲染HTML页面,并在渲染过程中使用验证。例如,我们可以创建一个控制器,并在其中定义一个路由来处理对某个页面的请求:import { Controller, Get, Render } from '@nestjs/common';
@Controller()
export class AppController {
@Get('/')
@Render('index') // 指定要渲染的HTML页面
getIndex() {
// 可以在这里处理验证逻辑
const user = { name: 'John', age: 25 };
return { user }; // 将数据传递给HTML页面
}
}
views
的文件夹,并在其中创建一个名为index.ejs
的HTML文件。在HTML文件中,可以使用模板引擎提供的语法来渲染数据和处理验证。以下是一个简单的例子:<!-- views/index.ejs -->
<!DOCTYPE html>
<html>
<head>
<title>验证示例</title>
</head>
<body>
<h1>欢迎 <%= user.name %>!</h1>
<p>年龄: <%= user.age %></p>
</body>
</html>
在这个例子中,<%= user.name %>
和<%= user.age %>
是模板引擎提供的语法,它们会被实际的数据替换。
import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { EjsAdapter } from '@nestjs-modules/mailer/dist/adapters/ejs.adapter'; // 导入EJS适配器
@Module({
imports: [],
controllers: [AppController],
providers: [],
})
export class AppModule {
constructor() {
// 配置EJS模板引擎
const ejsAdapter = new EjsAdapter();
app.set('view engine', 'ejs');
app.useStaticAssets('public'); // 可选:如果需要使用静态文件,例如CSS文件
}
}
在这个例子中,我们使用了@nestjs-modules/mailer
包中的EJS适配器,但你也可以使用其他的模板引擎适配器。
至此,你已经在NestJs中成功实现了通过HTML渲染使用验证。在实际开发中,你可以根据具体需求使用其他模板引擎和验证方式。
领取专属 10元无门槛券
手把手带您无忧上云