延迟加载 - 它什么时候下载块文件?
lazy loading - when does it download chunk files?
我正在使用 vue.js。例如,我想对路由使用延迟加载。
假设我通过触发 (npm run build
) 使用 webpack 构建了项目。
然后,随着 webpack
开始构建,它将单独生成所有 chunks
。
问题:据说在使用懒惰路由时,只有那个js文件被加载到我们将要走的路线上。正确的?如果是这样,当移动到另一条路线时,应该加载另一个块 js 文件。这个块从哪里来?
- 来自服务器?如果是这样,我们就完全失去了 SPA 的意义,因为
对于每次路由更改,我们都会去服务器并询问必要的 js
文件。
- 如果不是来自服务器,那么我们第一次下载的时候已经下载好了
加载页面。如果是这样,为什么拆分它是个好主意
如果第一页加载仍需要下载所有
块?
它将从服务器下载,但是您不会失去所有 SPA 优势,因为其他块可以在停留在初始页面上时预加载。这是从初始块呈现的。
如果你想快,你不能一次从服务器加载所有东西。您仍然需要与服务器通信。 SPA 的要点更多是摆脱重新下载 html/css/js 样板文件,并专注于为应用程序提供新数据(以及您的案例中的视图和逻辑)。
我正在使用 vue.js。例如,我想对路由使用延迟加载。
假设我通过触发 (npm run build
) 使用 webpack 构建了项目。
然后,随着 webpack
开始构建,它将单独生成所有 chunks
。
问题:据说在使用懒惰路由时,只有那个js文件被加载到我们将要走的路线上。正确的?如果是这样,当移动到另一条路线时,应该加载另一个块 js 文件。这个块从哪里来?
- 来自服务器?如果是这样,我们就完全失去了 SPA 的意义,因为 对于每次路由更改,我们都会去服务器并询问必要的 js 文件。
- 如果不是来自服务器,那么我们第一次下载的时候已经下载好了 加载页面。如果是这样,为什么拆分它是个好主意 如果第一页加载仍需要下载所有 块?
它将从服务器下载,但是您不会失去所有 SPA 优势,因为其他块可以在停留在初始页面上时预加载。这是从初始块呈现的。 如果你想快,你不能一次从服务器加载所有东西。您仍然需要与服务器通信。 SPA 的要点更多是摆脱重新下载 html/css/js 样板文件,并专注于为应用程序提供新数据(以及您的案例中的视图和逻辑)。