在Node.js中,可以使用__dirname
全局变量来获取当前模块的目录路径。在ejs文件类型中,可以通过以下方式使用__dirname
:
npm install ejs
server.js
,并在其中引入所需的模块:const express = require('express');
const path = require('path');
const ejs = require('ejs');
const app = express();
// 设置模板引擎为ejs
app.set('view engine', 'ejs');
// 设置模板文件的存放路径
app.set('views', path.join(__dirname, 'views'));
// 定义路由
app.get('/', (req, res) => {
// 渲染ejs模板文件
res.render('index', { message: 'Hello World' });
});
// 启动服务器
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
server.js
同级的目录下创建一个名为views
的文件夹,并在其中创建一个名为index.ejs
的ejs模板文件。在该文件中,可以使用__dirname
来引用其他文件或资源:<!DOCTYPE html>
<html>
<head>
<title>Example</title>
</head>
<body>
<h1><%= message %></h1>
<img src="<%= __dirname %>/images/example.jpg" alt="Example Image">
</body>
</html>
在上述示例中,__dirname
被用于引用images
文件夹中的example.jpg
图片。请根据实际情况修改路径和文件名。
需要注意的是,__dirname
返回的是当前模块的目录路径,而不是执行该模块的文件路径。因此,在使用__dirname
时,应该结合其他路径操作方法(如path.join()
)来构建完整的路径。
推荐的腾讯云相关产品:腾讯云云服务器(CVM)和腾讯云对象存储(COS)。
领取专属 10元无门槛券
手把手带您无忧上云