簡體   English   中英

foo.join和foo.resolve之間的區別? 在webpack中

[英]Difference between foo.join and foo.resolve? In webpack

我來自於Rails背景的紅寶石,我想知道我是否正確理解了以下代碼...

目前我的webpack.config.js如下所示...

var path = require('path');

module.exports = {
  context: path.join(__dirname, 'src'),
  entry: [
    './app.js'
  ],
  ... etc

如果我做了,會有什么區別

... (omitted code)

  context: path.resolve(__dirname, '../src'),

... etc

resolve會在目錄中查找文件嗎?如果不存在,會為我創建文件嗎? 有點像ruby if defined

path.join基本上只是使用主機操作系統的正確目錄定界符(通常為/\\ )進行字符串連接。 path.resolve做同樣的事情, 但也從系統的根目錄開始找出絕對路徑

在你的情況下,所產生的路徑將是相同的,因為__dirname已經是一個絕對路徑,所以用簡單的拼接path.join產生相同的結果作為path.resolve這保證了絕對路徑。

這兩種方法都不會創建不存在的目錄或文件-它們將為您提供路徑字符串,而不管是否實際上可以到達那里。

編輯:請注意, path.joinpath.resolvepath.resolve path模塊專門用於docs的方法 -它們不是通用的Javascript方法

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM