Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/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 导入文件以适应Web包包大小的更好方法_Javascript_Webpack_Bundle - Fatal编程技术网

Javascript 导入文件以适应Web包包大小的更好方法

Javascript 导入文件以适应Web包包大小的更好方法,javascript,webpack,bundle,Javascript,Webpack,Bundle,hooks/index.js 假设我在hooks文件夹usedilog、useCurrencies和useUser中有3个文件。我想从此文件夹进行正确的导入。现在我做的是这样的导入: import {useDialog} from 'hooks' 导入此文件是正确的方法,还是最好像从“hooks/useDialog”导入useDialog一样导入它?什么对我的捆绑尺寸更合适?您可以自己尝试,比较生产前后的捆绑尺寸。如果有人需要,我会解释怎么做 首先,使用从索引导入的代码执行以下步骤:从“hoo

hooks/index.js

假设我在hooks文件夹usedilog、useCurrencies和useUser中有3个文件。我想从此文件夹进行正确的导入。现在我做的是这样的导入:

import {useDialog} from 'hooks'

导入此文件是正确的方法,还是最好像从“hooks/useDialog”导入useDialog一样导入它?什么对我的捆绑尺寸更合适?

您可以自己尝试,比较生产前后的捆绑尺寸。如果有人需要,我会解释怎么做

首先,使用从索引导入的代码执行以下步骤:从“hooks”导入{useDialog}

打开本地地址http://localhost:5000/ 关于隐姓埋名模式。然后打开Inspect->Coverage

在底部可以看到尺寸。e、 g:2.1MB中的1.2MB目前已使用55%964kB未使用

然后更改代码并直接从文件导入:从“hooks/usediao”导入usediao,然后重复构建并检查大小

如果文件太小,您可能不会注意到差异,但如果有任何大文件或导入大型外部库的文件,您会注意到差异

我在我的项目上尝试了这种比较,有一个文件导入并使用了moment。我甚至没有使用这个组件,但是包的大小增加了,因为我从同一个索引导入了另一个组件

以前,我总是从“hooks”之类的文件夹导入,但从现在起,我将始终直接从文件“hooks/usedilog”导入


我只是在分享我的经验!请在您自己的项目上比较捆绑包

您可以自己试一试,比较生产前后的捆绑尺寸。如果有人需要,我会解释怎么做

首先,使用从索引导入的代码执行以下步骤:从“hooks”导入{useDialog}

打开本地地址http://localhost:5000/ 关于隐姓埋名模式。然后打开Inspect->Coverage

在底部可以看到尺寸。e、 g:2.1MB中的1.2MB目前已使用55%964kB未使用

然后更改代码并直接从文件导入:从“hooks/usediao”导入usediao,然后重复构建并检查大小

如果文件太小,您可能不会注意到差异,但如果有任何大文件或导入大型外部库的文件,您会注意到差异

我在我的项目上尝试了这种比较,有一个文件导入并使用了moment。我甚至没有使用这个组件,但是包的大小增加了,因为我从同一个索引导入了另一个组件

以前,我总是从“hooks”之类的文件夹导入,但从现在起,我将始终直接从文件“hooks/usedilog”导入


我只是在分享我的经验!请在您自己的项目上比较捆绑包

什么对我的包裹尺寸更合适?试着比较一下结果。我不认为在这方面有什么正确的建议,请注意,从“hooks”导入{useDialog}和从“hooks”导入useDialog是不同的,如果它不仅仅是一个typo@JanStr这不是打字错误,是的,它是不同的,我想知道什么是更好的,所以它很大程度上取决于它实际导入什么,什么是钩子的默认导出。。假设您使用的是树摇法,最好的方法是尽可能少地导入w.r.t.捆绑包大小。对于我的捆绑包大小,什么更好?试着比较一下结果。我不认为在这方面有什么正确的建议,请注意,从“hooks”导入{useDialog}和从“hooks”导入useDialog是不同的,如果它不仅仅是一个typo@JanStr这不是打字错误,是的,它是不同的,我想知道什么是更好的,所以它很大程度上取决于它实际导入什么,什么是钩子的默认导出。。假设您使用的是树震动,最好的方法是尽可能少地导入w.r.t.捆绑包大小。
import {useDialog} from 'hooks'
yarn build
serve -s build