Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何以文件结构组织NodeJ导出,但不创建具有相同结构的文件_Javascript_Node.js_Typescript_Commonjs - Fatal编程技术网

Javascript 如何以文件结构组织NodeJ导出,但不创建具有相同结构的文件

Javascript 如何以文件结构组织NodeJ导出,但不创建具有相同结构的文件,javascript,node.js,typescript,commonjs,Javascript,Node.js,Typescript,Commonjs,我有一个库,它的文件结构如下 root |-- index.js |-----folder1 |---- module a .... .... other modules that under other folders import {...} from "mylibrary/folder1/moudleAIndex" 我不希望库的使用者像这样导入模块a root |-- index.js |-----folder1 |---- module a ....

我有一个库,它的文件结构如下

root
|-- index.js
|-----folder1
        |---- module a
....
.... other modules that under other folders
import {...} from "mylibrary/folder1/moudleAIndex"
我不希望库的使用者像这样导入模块a

root
|-- index.js
|-----folder1
        |---- module a
....
.... other modules that under other folders
import {...} from "mylibrary/folder1/moudleAIndex"
如果开发人员能够做到这一点,这将是一件好事

import {...} from "mylibrary/moduleA"

有没有办法在不更改当前文件结构的情况下执行上述操作?

创建一个包含以下内容的
mylibrary/moduleA.js
文件:

import * as moduleA from './folder1/moudleAIndex';
export moduleA;

如果您的folder1中有一个文件
index.js
,那么从“mylibrary/folder1”导入{…}应该可以正常工作。在这种情况下,您可以将folder1重命名为moduleA以获得所需的语法。您可以有一个具有多个导出的根文件(类似于代理,但用于导出文件),大多数库都会这样做。开发人员将从该文件中导入所需内容,您的项目可以根据需要更改其文件结构。@BorisCharpentier能否提供一个示例?@BorisCharpentier我想这是唯一的方法。如果不创建新文件,则不能执行此操作