Meg*_*ikh 20 windows absolute-path node.js webpack
我可以在nodejs的窗口中使用正斜杠的绝对路径吗?我使用的是这样的东西:
global.__base = __dirname + '/';
var Article = require(__base + 'app/models/article');
Run Code Online (Sandbox Code Playgroud)
但是在Windows上,构建失败了,因为它需要类似的东西C:\Something\Something/apps/models/article
.我使用webpack.那么如何规避这个问题以便要求保持不变__base + 'app/models/src'
呢?
Vik*_*sal 32
我知道回答有点晚,但我认为我的回答会对一些访客有所帮助.
在Node.js
你可以很容易地通过只使用让您的当前正在运行的文件的名称和它的目录__filename
和__dirname
变量分别.
为了根据您的系统校正正斜杠和反斜杠,您可以使用path
模块Node.js
var path = require('path');
Run Code Online (Sandbox Code Playgroud)
像这里是一个混乱的路径,如果我想在我的服务器上使用它,我希望它是正确的.path
模块在这里为您完成一切
var randomPath ="desktop // my folder /\myfile.txt";
var correctedPath = path.normalize(randomPath); //that's that
console.log(correctedPath);
Run Code Online (Sandbox Code Playgroud)
Run Code Online (Sandbox Code Playgroud)desktop/my folder/myfile.txt
如果您想要文件的绝对路径,那么您也可以使用模块的resolve
功能path
var somePath = "./img.jpg";
var resolvedPath = path.resolve(somePath);
console.log(resolvedPath);
Run Code Online (Sandbox Code Playgroud)
Run Code Online (Sandbox Code Playgroud)/Users/vikasbansal/Desktop/temp/img.jpg
ape*_*pet 15
现在是 2020 年,距问题发布还有 5 年,但我希望我的回答对某人有用。我使用了替换方法,这是我的代码(express js 项目):
const viewPath = (path.join(__dirname, '../views/')).replace(/\\/g, '/')
exports.articlesList = function(req, res) {
res.sendFile(viewPath + 'articlesList.html');
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
25080 次 |
最近记录: |