Angular Universal 允许你预先渲染应用程序的页面。预先渲染是在构建时处理动态页面生成静态 HTML 的过程。
要预先渲染静态页面,要先向你的应用程序添加 SSR 功能。添加 SSR 后,运行以下命令:
npm run prerender
向应用程序添加预先渲染时,可以使用以下构建选项:
选项 | 详情 |
---|---|
browserTarget | 指定要构建的目标。 |
serverTarget | 指定用于预先渲染的应用程序的服务器目标。 |
routes | 定义要预先渲染的额外路由数组。 |
guessRoutes | 构建器是否应该提取路由并猜测要渲染的路径。默认为 |
routesFile | 指定一个文件,其中包含要预先渲染的所有路由的列表,以换行符分隔。如果你有大量路由,则此选项很有用。 |
numProcesses | 指定在运行预先渲染命令时要使用的 CPU 数量。 |
你还可以预先渲染动态路由。动态路由的一个例子是 product/:id
,其中 id
是动态提供的。
要预先渲染动态路由,请从以下选项中选择一个:
在运行 prerender 命令时,你可以提供额外的路由。比如:
ng run <app-name>:prerender --routes /product/1 /product/2
你可以使用文件提供路由以生成静态页面。如果你要生成的大量路由(比如电子商务应用程序的产品详细信息)可能来自外部源(数据库或 CMS),则此方法很有用。
要使用文件来提供路由,请使用 --routes-file
选项和包含路由的 .txt
文件的名称。
比如,你可以通过使用脚本从数据库中提取 ID 并将它们保存到 routes.txt
文件来生成此文件:
/products/1
/products/555
当你的 .txt
文件准备好后,运行以下命令以使用一些动态值来预先渲染静态文件:
ng run <app-name>:prerender --routes-file routes.txt
你还可以将特定路由传递给 prerender 命令。如果你选择此选项,请确保禁用 guessRoutes
选项。
ng run <app-name>:prerender --no-guess-routes --routes /product/1 /product/1
备案信息: 粤ICP备15087711号-2
Copyright © 2008-2024 啊嘎哇在线工具箱 All Rights.
本站所有资料来源于网络,版权归原作者所有,仅作学习交流使用,如不慎侵犯了您的权利,请联系我们。