📅  最后修改于: 2020-12-16 05:03:17             🧑  作者: Mango
Angular 7是一个平台和框架,用于以HTML和TypeScript创建客户端应用程序。 Angular 7用TypeScript编写。
Angular 7将核心和可选功能实现为一组TypeScript库,您可以在应用程序中将其导入。
NgModules是Angular 7应用程序的基本构建块。它们为组件提供了编译上下文。 Angular 7应用程序由一组NgModule定义,并且NgModules将相关代码收集到功能集中。
Angular 7应用程序始终至少具有启用引导的根模块,并且通常具有许多其他功能模块。
组件和服务都只是带有装饰器的类,装饰器标记了它们的类型并提供了指导Angular做事的元数据。
每个Angular应用程序始终至少具有一个称为根组件的组件,该组件将页面层次结构与页面DOM连接起来。每个组件都定义一个包含应用程序数据和逻辑的类,并且与一个HTML模板相关联,该HTML模板定义了要在目标环境中显示的视图。
Angular 7 NgModules与其他JavaScript模块不同。每个Angular 7应用程序都有一个称为AppModule的根模块。它提供了启动应用程序的引导机制。
通常,每个Angular 7应用程序都包含许多功能模块。
Anngular 7模块的一些重要功能:
在Angular 7中,使用模板将HTML与Angular标记结合起来,并在显示HTML元素之前对其进行修改。模板指令提供程序逻辑,而绑定标记将您的应用程序数据和DOM连接起来。
数据绑定有两种类型:
在Angular 7中,开发人员为与特定视图无关的数据或逻辑创建服务类,并且他们希望在组件之间共享。
依赖注入(DI)用于使您的组件类精简而高效。 DI不会从服务器获取数据,验证用户输入或直接登录到控制台。它只是将此类任务呈现给服务。
在Angular 7中,路由器是NgModule,它提供一项服务,可帮助开发人员在不同应用程序状态之间定义导航路径并查看其应用程序中的层次结构。
它的工作方式与浏览器的导航相同。即:
路由器将类似URL的路径映射到视图而不是页面。每当用户执行某项操作(例如单击将在浏览器中加载新页面的链接)时,路由器就会拦截浏览器的行为,并显示或隐藏视图层次结构。
如果路由器发现当前应用程序状态需要特定功能,并且尚未加载定义它的模块,则路由器可以根据需要延迟加载模块。
路由器会根据您应用的视图导航规则和数据状态来解释链接URL。当用户单击按钮或从下拉框中选择内容时,或者响应来自任何来源的其他一些刺激时,您可以导航到新视图。路由器将活动记录在浏览器的历史记录中,因此后退和前进按钮也可以工作。
要定义导航规则,请将导航路径与组件关联。路径使用类似于URL的语法来集成您的程序数据,就像使用模板语法将您的视图与程序数据集成一样。然后,您可以根据用户输入和您自己的访问规则,应用程序逻辑来选择显示或隐藏哪些视图。