![](/img/trans.png)
[英]What's the difference between async.waterfall and child_process.execSync?
[英]What's the difference between node:process and process?
當我導入node:process
時,它工作正常。 但是,當我嘗試要求相同時,它會出錯。
這很好用:
import process from 'node:process';
但是當我嘗試要求相同時,它會拋出一個錯誤:
const process = require('node:process');
Error: Cannot find module 'node:process'
我很好奇 process 與node:process
process
有什么區別,它在 commonjs 和模塊中都有效。
另外,作為后續行動,我正在使用 webpack 來捆綁我的 js,當我嘗試運行我的捆綁代碼並意識到該錯誤時,我發現了這個錯誤, chalk
導入了node:process
、 node:os
和node:tty
。 我現在該如何解決?
import process from 'node:process';
並import process from 'process';
是等價的。
node:
自import
版本 12 開始存在。
node:
支持 URL 作為加載 Node.js 內置模塊的替代方法。 這個 URL 方案允許內置模塊被有效的絕對 URL 字符串引用。
node:
背后的想法是明確它實際上是一個構建模塊而不是一個已安裝的模塊,並避免名稱沖突,與第 3 方模塊。
node:
協議最初只是為了import
而添加的,因此特定的節點版本可能支持node:
with import
但不支持require
。
在 v16.13.0(不確定從哪個 v16 版本開始)中,您也可以將它與require
一起使用。 自 v14.18 以來也被反向移植到 v14:模塊:添加對 node:-prefixed require(...) 調用的支持
“節點:”是一個用於加載 ECMAScript 模塊的 URL 方案。 因此它開始是為了“導入”,而不是“需要”。
“node:process”只是加載內置“process”模塊的替代名稱。
另請參閱Node.js 文檔- 您可以在“歷史”標簽內找到最低支持 Node.js 版本(12.20.0、14.13.1)
對於較新的 Node.js,它也應該可用於“require”(14.18.0、16.0.0)。
可以在此處找到更多詳細信息:node:process 總是更喜歡內置的核心模塊,而進程可以從文件中加載。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.