Angular 7.0 – 它的新 Avatar 有什么新功能?

已发表: 2018-12-29

建筑物的力量在于它的混凝土柱子。 Web 应用程序的框架也是如此。 软件框架提供了一种设计、构建和部署应用程序的标准方法。 在 Java 平台的世界中, Javascript 框架是最流行的流行语,直到 Angular 变得重要。
现在,让我们看看Angular 的一些显着特性。

  • Angular 是一个开源 Javascript 框架,现在演变成所谓的“Typescript”。
  • 与(Javascript)JS 代码相比,代码生成和开发速度更快。
  • 命令行提示 (CLI) 具有更快地构建应用程序的命令。
  • 该代码组织良好,因为它使用组件,因此提高了生产力
  • 指令是处理 HTML 中的变量、if 语句和循环的动态函数
  • Angular 是跨平台的,因此它独立于浏览器和操作系统
  • Angular CLI 附带了有助于单元测试的测试工具

从世界顶级大学在线学习软件工程课程获得行政 PG 课程、高级证书课程或硕士课程,以加快您的职业生涯。

目录

AngularJS——Angular 的前身

AngularJS 是谷歌在 2009 年推出的 Angular 系列中的第一款产品。它是一个客户端或前端框架。 这意味着代码在用户的浏览器上运行,而不是在 Web 服务器上。 AngularJS 纯粹是用 Javascript 编写的。 这是为了解耦应用程序逻辑而开发的,但是,它是 Angular 及其当前 avatar 7.0 唯一相当成功和铺平的方式。
AngularJS 是您下一个移动应用程序开发的正确选择吗?

Angular 7.0 框架

让我们简要了解一下 Angular 的构建块:

  1. 模块:基本上在逻辑上分解应用程序的核心屏幕。 例如,如果有一个购物车页面,可能需要一个购物车模块。
  2. 组件:这是 UI 的一部分,是面向对象编程中的“类”。 这是用户界面 (UI) 的基本构建块。 组件类包含页面的核心逻辑。
    组件由以下部分组成:

    1. 模板:模板是用 HTML 编写的,也可以是 HTML 文件。 它可以具有变量等动态属性,并且可以通过指令使用“如果条件”。
    2. 类:是应用程序的代码。 代码是用 Typescript 编写的。 Typescript 是 Javascript 的超集。 Typescript 是一种“静态”类型语言,其中使用定义的类型声明变量。 因此,错误会在程序编译时被捕获,而不是在运行时被捕获。 Angular 类也可以用 Javascript 编写。 组件具有数据属性和方法。
    3. 元数据:要识别该类是 Angular 组件,请使用元数据。 元数据可以使用装饰器声明附加到 Typescript。
      让我们看一下 Angular 中的一个简单组件。

       从 ''@angular/core'' 导入 {component} ; 这里的组件包是从 Angular 核心库导入的。
      @component ({ (这是一个装饰器声明)
      Selector : 'myapplication' ...(。这是我们用来插入组件的自定义 HTML 标记。)
      模板:'<h1> Hello {(name)}</h1>(name 是一个变量)
      })
      export class AppComponent{(这是组件类,'name'是类中的一个属性)
      name = '角框架';
      }
      <正文>
      <myapplication>在此处加载示例应用组件..</myapplication>
      </正文>
    4. 数据绑定:允许组件和视图之间通信的过程。 因此数据从组件传递到视图,反之亦然。 有四种类型的数据绑定。 在插值和属性绑定中,数据从组件发送到视图,而在事件绑定中,数据从视图或模板发送到组件。 在双向绑定中,数据双向传输。
    5. 服务:这是为可重用代码编写的类,即可以从多个组件访问的代码。 这些类跨组件发送数据和功能。 服务类还可以从数据库或 js/JSON 文件中获取数据。 当一个人使用一个服务类时,代码看起来是有组织的和零散的。
    6. 指令:自定义 HTML 属性以扩展 HTML 的功能是一个指令。 ngIf、ngFor、ngModel 是指令。 ngModel 负责将视图绑定到模型中,这是其他指令(例如 input、textarea 或 Select)所需要的。
      这是一段代码,展示了 ngmodel 的工作原理。

       <div ng-app="" ng-init="firstName='John'">
      <p>在输入框中输入名称:</p>
      <p>名称:<input type="text" ng-model="firstName"></p>
      <p>您写道:{{ firstName }}</p>
      </div>
      

      因此,firstName 被初始化为“John”,当在文本框中输入新值时,firstName 将保存输入的新名称。

    7. 依赖注入(DI) 类需要对象来执行特定的功能。 类不是每次都在类中创建对象,而是从外部源接收对象(依赖项)。 在 DI 框架中,需要遵循以下步骤:
      1. 创建一个服务类,例如。 员工数据
      2. 向 Injector 注册此服务类。 Injector 是一个包含所有依赖类的容器
      3. 将 Employeedata 类声明为需要它的类中的依赖项,例如。 EmployeeList 类
软件开发人员做什么?

Angular 的版本

在 AngularJS 之后,发布了 Angular 2,这是对 AngularJS 的完全重写。 组件是从 Angular 2 添加的。Angular 2 不向后兼容。 Angular 由一堆包组成,Angular 3 中的 Router 包不同步。 因此,Angular 团队继续使用 Angular 4,该版本包含所有更正和功能,并向后兼容 Angular 2。随后 Angular 5、Angular 6 发布,最新版本现在是 Angular 7

Angular 7.0 有什么新功能?

  1. CLI 提示:Angular 命令行提示的一个变化是 CLI 提示用户在运行常用命令时选择功能。 用户可以选择 Angular 路由或样式表格式等功能。 在以前版本的 Angular 中,必须记住并在提示符上键入选项。
  2. 应用性能
    1. 常见错误:
      在这个版本中,Angular 团队分析并删除了开发人员所犯的一些常见错误,例如生产中包含的“反射元数据”polyfill,实际上仅在开发中才需要。
    2. 捆绑预算:
      为了提高应用程序的性能,默认的捆绑预算在 angular.JSON 中定义。 现在,如果应用程序包大小超过 5MB 的限制并且初始包超过 2MB,开发人员将收到警告。 可以根据需要在 JSON 文件中修改这些值。
  3. Angular Material 和 CDK: Angular 组件开发工具包 (CDK) 是从 Angular Material(库的 UI)创建的。CDK 中添加的两个新功能是
    1. 虚拟滚动:
      为了仅加载屏幕上的可见部分,<cdk-virtual-scroll-viewport> 包为响应滚动事件的指令提供了帮助程序。 因此,它只会渲染适合屏幕的项目。 当用户滚动列表时,DOM 将根据显示大小动态加载和卸载元素。
    2. 拖放支持:
      @angular/cdk/drag-drop 模块有助于自由拖放元素,重新排序列表中的项目,移动列表中的项目等等。 这是在 cdkDropList 和 cdkDrag 指令的帮助下完成的。
  4. Angular 7.0 已更新其依赖项以支持 Typescript 3.1、RxJS 6.3 和 Node 10
  5. 改进的 Selects 可访问性:本机“select”具有一些性能、可访问性和可用性优势,因此在“mat-form-field”内使用本机 select 元素是 Angular 7.0 中的一项新功能。
  6. Angular 元素: Angular 7 中的一个小改动,但又是新的
    Angular Elements 现在支持使用自定义元素的 Web 标准进行内容投影。” ——这就是 Angular 所说的 Stephen Fluin。
  7. 与合作伙伴合作: Angular 团队一直在与最近启动的社区项目合作,其中之一就是 Angular 控制台。 Angular Console 是 Angular CLI 的用户界面。 这对初学者和专家都有好处,因为它比提示要容易得多。 Windows 和 Mac OS 有不同的 UI 版本
Java MVC 架构初学者指南

Angular 7.0 中的大部分变化都是关于性能改进和错误修复。 因此,它是迄今为止最安全的版本,并且从早期版本迁移很简单。 Ivy 是 Angular 团队正在开发的即将推出的新渲染引擎。 到那时,让我们拭目以待。 继续学习

如果您有兴趣了解有关全栈软件开发的更多信息,请查看 upGrad 和 IIIT-B 的软件开发执行 PG 计划 - 全栈开发专业化,专为工作专业人士设计,提供 500 多个小时的严格培训,9+项目和任务、IIIT-B 校友身份、实用的实践顶点项目和顶级公司的工作协助。

成为全栈开发人员

申请 upGrad 的软件工程与工作相关的 PG 认证