gpt4 book ai didi

node.js - 何时在 Node.js require() 中使用 ../与 ./

转载 作者:太空宇宙 更新时间:2023-11-04 02:56:56 24 4
gpt4 key购买 nike

var User = require('../models/user');

因此,在 Visual Studio 中,我创建了一个名为 models 的文件夹,并在其中创建了一个名为 user.js 的文件。根据我的了解,放置 ./models/user 而不是两个点是有意义的。虽然这让我崩溃了,但我想知道这可能是什么原因。谢谢

最佳答案

. (一个点)是当前目录

.. (两个点)是目录

您使用哪一个取决于您要加载的内容。

示例:

假设您有这些文件结构:

- app
- dir1
- file1.js
- file2.js
- dir2
- file3.js

要使用 file1.js 中的 file2.js,您需要:

require('./file2.js');

因为这些文件位于同一目录中。

但是要使用 file1.js 中的 file3.js,您需要:

require('../dir2/file3.js');

因为您需要从当前目录之上的一个目录开始。

当然,从 file1.js 使用 file2.js 也可以:

require('../dir1/file2.js');

甚至是这个:

require('../../app/dir1/file2.js');

甚至是像这样的疯狂路径:

require('./././../../app/../app/../app/dir1/file2.js');

这不是 Node.js 特有的。它的工作方式与在 shell 或 HTML 或其他任何东西中的工作方式相同。一个点是当前目录,两个点是父目录。

这就是您使用 ./script 的原因运行script在当前目录中(如果 . 不在您的 PATH 中),您将运行 ../script运行script在父目录等中。在 HTML 中 <a href=".."></a>将是指向父目录 <a href="../file.html"></a> 的链接将是 file.html 的链接在父目录中,而 <a href="./file.html"></a>将是 file.html 的链接在当前目录等中。这是一个非常通用的约定。

关于node.js - 何时在 Node.js require() 中使用 ../与 ./,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40534320/

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