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_Webpack Dev Server - Fatal编程技术网

Javascript 如何减少Web包开发人员服务器重建时间

Javascript 如何减少Web包开发人员服务器重建时间,javascript,webpack,webpack-dev-server,Javascript,Webpack,Webpack Dev Server,我正在开发一个Javascript游戏,在本地使用大型3d资源。我需要那些带有webpack的资产,如: require('../../assets/models/house.obj') 如您所见,这样做会给我带来大量的初始包和大量的初始构建时间: [0] main-ad421c4138968fe0a8ae.js 14.8 MB 0 [emitted] main [0] webpack built ad421c4138968fe0a8ae in 266

我正在开发一个Javascript游戏,在本地使用大型3d资源。我需要那些带有webpack的资产,如:

require('../../assets/models/house.obj')
如您所见,这样做会给我带来大量的初始包和大量的初始构建时间:

[0]           main-ad421c4138968fe0a8ae.js    14.8 MB       0  [emitted]  main
[0] webpack built ad421c4138968fe0a8ae in 26610ms
我对大量的构建时间没有意见,但真正的问题是使用dev服务器的重建时间

[1] [piping] File src/Game.js has changed, reloading.
[0] webpack built 80f5c6c75e347304002c in 10534ms
重建包需要10-20秒,甚至更长的时间才能到达浏览器。如果可能的话,我想减少这个时间

我已尝试完全忽略我的资产文件夹:

new webpack.IgnorePlugin( /assets\/*/ ),
但正如您可能猜到的,这意味着我不能再通过loacl路径
require()
资产,这基本上就是使用webpack的全部意义

我还尝试使用忽略我的资产文件夹和节点模块:

new WatchIgnorePlugin([
    path.resolve( __dirname, '../assets/models/' ),
    path.resolve( __dirname, '../node_modules/' )
]),

然而,这也不会减少构建时间。我很喜欢这个插件,因为它看起来根本不起任何作用。

我发现显著减少热重新加载时间的最好方法是使用Webpack的奇怪的“DllPlugin”。基本上,它构建了一个包含所有第三方依赖项的静态文件,所以Webpack在热重新加载期间不会再触及这些依赖项


我写下了我目前所知道的一切。

如果你的资产在重建和(我假设它们是资产)之间没有变化,那么就没有依赖于你的应用程序的任何其他东西的js代码-只有你的应用程序依赖于它们,你能做吗?(在您的情况下,只要您不更改,第一个条目将永远不会重新加载您的资产,第二个条目将使用您的游戏代码)@topheman考虑到我的主条目块仍然需要所有资产,这可能吗?webpack不会仍然将它们捆绑到一个单独的条目块中吗?我添加了一个单独的条目块,其中包含了我所有的大型资产,构建时间仍然很长