Javascript 如何从命令行(终端)使用节点访问模块

Javascript 如何从命令行(终端)使用节点访问模块,javascript,node.js,Javascript,Node.js,我想从File2.js调用File1.js中的sum()。但是当我运行File2.js时,什么都没有发生 这些是我的档案 File1.js export function sum(FirstItem,SecondItem){ return (FirstItem+SecondItem) } File2.js import {sum} from './File1.mjs' console.log(sum(3,5)) 使用require和模块。导出 File1.js export functi

我想从File2.js调用File1.js中的sum()。但是当我运行File2.js时,什么都没有发生

这些是我的档案

File1.js

export function sum(FirstItem,SecondItem){
  return (FirstItem+SecondItem)
}
File2.js

import {sum} from './File1.mjs'
console.log(sum(3,5))

使用
require
模块。导出

File1.js

export function sum(FirstItem,SecondItem){
  return (FirstItem+SecondItem)
}
File2.js

import {sum} from './File1.mjs'
console.log(sum(3,5))
输出

ECMAScript模块在节点API中是实验性的。

为了使用它们

试试这个:

File1.mjs

File2.mjs

现在使用以下命令运行此命令:

node --experimental-modules file2.mjs
输出


请参阅文档。

使用
要求
模块。导出

File1.js

export function sum(FirstItem,SecondItem){
  return (FirstItem+SecondItem)
}
File2.js

import {sum} from './File1.mjs'
console.log(sum(3,5))
输出

ECMAScript模块在节点API中是实验性的。

为了使用它们

试试这个:

File1.mjs

File2.mjs

现在使用以下命令运行此命令:

node --experimental-modules file2.mjs
输出


请参阅文件。

打字错误?“/File1.mjs”而不是“/File1.js”@maxm在Sero编写的
File1.js
:typo?“/File1.mjs”而不是“/File1.js”@maxm在Sero编写
File1.js
的地方更可能出现打字错误:运行第一个解决方案时出现以下错误。错误:在Loader.resolve[as_resolve](internal/modules/esm/default_resolve.js:28:12)在Loader.resolve[as_resolve](internal/modules/esm/default_resolve.js:64:11)在Loader.resolve(internal/modules/esm/Loader.js:58:33)在Loader.getModuleJob(internal/modules/esm/esm/Loader.js:113:40)在Loader.import中找不到module(internal/modules/esm/loader.js:99:28)位于asyncESM.loaderPromise.then(internal/modules/cjs/loader.js:734:27)..…当我运行第二个时就是这样。节点--实验模块kj1.mjs^^^^^^^^^^^^^^^^^^^^^这个文件存在吗
C:/Users/hopar/kj1.mjs
是的。我检查了PLZ是否提供了用于导入
kj1.mjs
文件的代码。运行第一个解决方案时出现以下错误。错误:Cannot在Loader.resolve[as_resolve](internal/modules/esm/default_resolve.js:28:12)在Loader.resolve(internal/modules/esm/default_resolve.js:64:11)在Loader.resolve(internal/modules/esm/Loader.js:58:33)在Loader.getModuleJob(internal/modules/esm/esm/Loader.js:113:40)在Loader.import中查找module/C/C/C/C(internal/modules/esm/loader.js:99:28)位于asyncESM.loaderPromise.then(internal/modules/cjs/loader.js:734:27)..…当我运行第二个节点时就是这样。节点--实验模块kj1.mjs^^^^^^^^^^^^^^^^^^^这个文件是否存在
C:/Users/hopar/kj1.mjs
是的。我检查了PLZ是否提供了用于导入
kj1.mjs
文件的代码。
(node:12236) ExperimentalWarning: The ESM module loader is experimental.
8