我们在使用 yarn run 启动 Angular 应用时,注意到 browser Application 和 server Application bundle 的生成:
在 Angular 应用程序中,应用程序包含两个主要的部分:客户端应用程序和服务器应用程序。客户端应用程序是在 Web 浏览器中运行的 Angular 应用程序,而服务器应用程序是在服务器端运行的 Node.js 应用程序。
为了支持这两个应用程序,Angular 应用程序包括两种类型的应用程序包:浏览器应用程序包和服务器应用程序包。
Browser Application Bundles
浏览器应用程序包是客户端应用程序的一部分,它包含了 Angular 应用程序在浏览器中运行所需的所有代码和资产。浏览器应用程序包通常包含以下内容:
所有的 TypeScript 和 JavaScript 代码,包括 Angular 应用程序的组件、指令、管道、服务等等。
所有的模板文件,这些模板文件描述了 Angular 应用程序的用户界面。
所有的 CSS 和样式文件,这些文件定义了 Angular 应用程序的外观和样式。
所有的图像、字体和其他静态文件,这些文件用于提供 Angular 应用程序所需的所有资源。
所有的第三方库和依赖项,这些库和依赖项是 Angular 应用程序所需的所有扩展功能的基础。
浏览器应用程序包可以通过 Angular CLI 或其他打包工具(如 webpack 或 Rollup)生成。它通常包含一个或多个 JavaScript 文件,以及一些其他的资源文件,如 HTML、CSS 和图像文件。
Server Application Bundle
服务器应用程序包是服务器端应用程序的一部分,它包含了 Angular 应用程序在服务器端运行所需的所有代码和资产。服务器应用程序包通常包含以下内容:
所有的 TypeScript 和 JavaScript 代码,包括 Angular 应用程序的服务器端渲染代码。
所有的模板文件,这些模板文件用于在服务器端生成 Angular 应用程序的初始 HTML。
所有的第三方库和依赖项,这些库和依赖项是 Angular 应用程序所需的所有扩展功能的基础。
服务器应用程序包可以通过 Angular CLI 或其他打包工具(如 webpack 或 Rollup)生成。它通常包含一个或多个 JavaScript 文件,以及一些其他的资源文件,如 HTML、CSS 和图像文件。
需要注意的是,服务器应用程序包通常不包含 Angular 应用程序的所有客户端资产,如组件、指令、管道、服务等等。这些资产通常会被打包到浏览器应用程序包中,因为它们只需要在浏览器中运行。