gpt4 book ai didi

javascript - Node path.relative 返回不正确的路径

转载 作者:IT老高 更新时间:2023-10-28 23:26:05 27 4
gpt4 key购买 nike

我很确定我一定是错的,但在 Node 中,path.relative似乎输出了错误的目录,或者至少是我没想到的:

> path.relative('a/file.js', 'a/file.css')
> '../file.css'

但我希望结果类似于:

> './file.css'

本质上,我试图计算两条路径的差异,以便一个文件 require 另一个文件,而 ../file.css 显然是错误的我需要,因为这两个文件都在 a 目录中。输出表明 file.css 在父目录中。

我错过了什么?

最佳答案

据我所知,path.relative() 需要一个文件夹而不是文件作为它的第一个参数。这有效:

path.relative('a', 'a/file.css')
> 'file.css'

这是 path.relative 的源代码: https://github.com/joyent/node/blob/master/lib/path.js#L504-L530 https://github.com/joyent/node/blob/master/lib/path.js#L265-L304

(注意:如果将来行号发生变化,这里是我写这篇文章时的源链接:https://github.com/nodejs/node-v0.x-archive/blob/94beb2985b4cb25e592a9ccc226f6c824a81e510/lib/path.js)

如您所见,路径由其中的斜线分隔,它只是比较部分的数量,因此如果您将文件而不是文件夹作为 from参数。

关于javascript - Node path.relative 返回不正确的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31023972/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com