Angular 6正式版发布,都有哪些新功能

Angular6.X 中文官方文档 angular前端框架 中文官方api,用于学习和开发参考资料 立即下载

这里写图片描述
在Angular 5发布半年之后,Angular 6在昨天正式发布,那么在这个版本有哪些新功能呢?新版本重点关注工具链以及工具链在 Angular 中的运行速度问题。除此之外,这次更新还包括框架包(@angular/core、@angular/common、@angular/compiler 等)、Angular CLI、Angular Material + CDK等。

ng update

ng update 是一种新的 CLI 命令,它可分析你的package.json,并基于对 Angular 的了解向你的应用程序推荐更新。官方升级手册链接如下: 
https://update.angular.io/

ng update可以帮助你使用正确版本的依赖包,让你的依赖包与你的应用程序同步,使用 schematics 时,第三方还能提供脚本更新。如果你的某个依赖包提供了ng update schematic,那么它在进行重大更改时会自动更新代码!

ng update不会取代你的软件包管理器,而是在后台使用 npm 或 yarn 来管理依赖包,除了更新和监视依赖包外,ng update还会在必要的时候对你的项目进行改造。

例如,命令ng update @angular/core将会更新所有的 Angular 包以及 RxJS、FTypeScript,它还将在这些包中运行可用的 schematics 以保证版本是最新的。同时,这个命令还能自动安装rxjs-compat到你的应用程序中,以使 RxJS v6 更加流畅。

学习更多关于如何使用ng update , 开始学习如何创建您自己的 ng update 语法,可以参考 rxjs 的 package.json 的入口,它关联了 collection.json。

ng add

另一项新的 CLI 命令ng add 将使你的项目更容易添加新功能。ng add使用软件包管理器来下载新的依赖包并调用安装脚本,它可以通过更改配置和添加额外的依赖包(如 polyfills)来更新你的应用。

你可在新的ng new应用程序中尝试以下动作:

  • ng add @angular/pwa:添加一个 app manifest 和 service worker,将你的应用程序变成 PWA。
  • ng add @ng-bootstrap/schematics:将ng-bootstrap添加到你的应用程序中。
  • ng add @angular/material:安装并设置 Angular Material 和主题,注册新的初始组件 到ng generate中。
  • ng add @clr/angular@next:安装设置 VMWare Clarity。

由于 ng add 基于 schematics 和 Npm ,我们希望库和社区支持我们构建一个 ng add 支持包的生态圈。创建ng add的示例如下:Angular Metarial 的 ng add schemetic

Angular Elements

Angular Elements 的第一个版本专注于在现有的 Angular 应用程序中启动 Angular 组件,方法是将它们注册为 Custom Elements,目前已被广泛用于 angular.io 内容管理系统中,它嵌入 HTML,可动态启动系统功能。

注册 Angular Component 作为 custom element,或者学习更多的 Angular Elements。

Angular Material + CDK 组件

最值得一提的是用于显示分层数据的树形控件,遵循数据表组件的模式,CDK 包含树的核心指令,而 Angular Material 则提供与顶层的 Material Design 样式相同的体验。

除了 tree 组件之外,我们还提供了 badge 和 bottom-sheet-components。Angular还更新了徽章(badge)和底部菜单栏的组件,徽章用于显示小而有用的信息,例如未读信息的数量。

目前,@angular/cdk/overlay 软件包是 CDK 最强大的基础架构之一,你可以利用他们来构建自己的 UI 库。

Angular Material 初始组件

一旦运行ng add @angular/material并添加材料到现有的应用程序中,就能够生成 3 个新的初始组件。 
这里写图片描述

Material Sidenav

Material Sidenav 是带有应用程序名称和侧面导航的工具栏的初始组件,它基于断点窗口(breakpoints)进行响应。例如,运行如下代码:

ng generate @angular/material:material-nav
  • 1

这里写图片描述

Material Dashboard

Material Dashboard 是包含动态网格列表的启动组件。例如,运行下面的代码:

ng generate @angular/material:material-dashboard
  • 1

这里写图片描述

Material Data Table

Material Data Table 已预配置了一个用于排序和分页的datasource。例如:

ng generate  @angular/material:material-table
  • 1

这里写图片描述

想要了解更多的资料:Angular Material Schematics

CLI Workspaces

CLI v6 现已支持多项目工作区,如多个应用程序或库,CLI 项目用 angular.json 取代 angular-cli.json 构建和配置项目。每个 CLI 工作区都有项目,每个项目都有目标,每个目标都可以有配置。例如:

angular.json:
{
  "projects": {
    "my-project-name": {
      "projectType": "application",
      "architect": {
        "build": {
          "configurations": {
            "production": {},
            "demo": {},
            "staging": {},
          }
        },
        "serve": {},
        "extract-i18n": {},
        "test": {},
      }
    },
    "my-project-name-e2e": {}
  },
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

关于angular-cli.json更多的配置可以参考下面的链接: 
https://github.com/angular/angular-cli/wiki/angular-workspace

库支持

接下来介绍 CLI 最重要的一项功能:支持创建和构建库。例如,执行下面的代码:

ng generate library <name>
  • 1

这里写图片描述

该命令将在 CLI 工作区内创建一个库,并对其进行配置以进行测试和构建。使用Angular CLI 创建库可以查看下面的链接: 
https://github.com/angular/angular-cli/wiki/stories-create-library

Tree Shakable Providers

为了让你的应用更小,我们将服务引用模块改为模块引用服务,这让我们只需要构建在模块里注入的服务。例如,之前的写法是这样的:

@NgModule({
   ...
   providers: [ MyService ]
})
export class AppModule {}
  • 1
  • 2
  • 3
  • 4
  • 5

服务的定义如下:

my-service.ts:

import { Injectable } from '@angular/core';

@Injectable()
export class MyService {
  constructor() { }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

那么,在新版的语法是下面这样的,NgModule 不再需要引用。

my-service.ts
import { Injectable } from '@angular/core';

@Injectable({
  providedIn: 'root',
})
export class MyService {
  constructor() { }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

动画性能提升

更新后,以后将不再需要网页动画 polyfill。这意味着你可以从应用程序中删除此 polyfill,可以节省大约 47KB 的内存,同时提高 Safari 中的动画性能。

RxJS v6

Angular 6 也将支持RxJS v6,RxJS v6 于上个月发布。RxJS v6 带来了一个向后兼容的软件包 rxjs-compat,它可以让你的应用程序保持运行。关于如何从 RxJS 5.5 迁移到 6 ,可以查看下面的链接资料: 
https://github.com/ReactiveX/rxjs/blob/master/MIGRATION.md

长期支持(LTS)

Angular 表示他们正在将长期支持版本扩展到所有主版本中。

之前只有 v4 和 v6 是 LTS 版本,但为了使开发者从一个主版本更新到另一个主版本更容易,并给予项目充足的时间来规划更新,Angular 团队表示从 v4 开始,将扩大对所有主版本的长期支持。

每个主版本的支持时间是18个月,其中,前6个月是积极开发阶段,接下的 12 个月是错误修正和安全补丁阶段。

如何更新到 Angular 6.0.0

读者可以访问 update.angular.io 来得到升级应用的信息和指导。 
这里写图片描述

更新通常遵循 3 个步骤,请使用新 ng update 工具:

  • 更新 @ angular / cli;
  • 更新你的 Angular 框架包;
  • 更新其他依赖包。

Ivy

关于我们下一代的渲染引擎 Ivy,Ivy 当前处于开发阶段,还不是 v6 的一部分。关于更多的信息可以访问官方关于Angular 6的发布信息。

angular6 开发实例 2018年6月最新版 Packt.Angular.6.By.Example.3rd.Edition angular6 开发实例 2018年6月最新版 立即下载

相关推荐

手把手教你用TL431设计反激电源补偿器(附波特图调试技巧)

本文详细介绍了如何使用TL431设计反激电源补偿器,并提供了波特图调试技巧。通过实战经验分享,帮助工程师快速掌握补偿网络设计、分压电阻计算和稳定性判据,避免常见设计误区,提升电源稳定性与效率。

weixin_29201859的博客 379

angular框架简介基础与使用(全文2w8字)前端框架angular

angular作为一个完整的框架,模块化做的特别好。内置的路由,httpclient,rxjs,除了界面相关的组件库,几乎可以不用任何第三方工具库就可以完成一个spa项目。对typescript支持非常好,或者说只有typescript以一个选择。Angular是三大巨头中,框架版本升级最容易的,虽然目前在国内不是特别火。...

几百块的博客 2万+

告别IMEI!手把手教你用UUID实现Android设备唯一标识(兼容Android 10-13)

本文详细探讨了在Android 10及以上版本中,如何构建合规且高可用的设备唯一标识方案以替代被限制访问的IMEI。文章深入分析了Android设备标识符的演变,并提供了基于UUID/GUID的完整实现策略,包括生成算法、多级持久化存储方案(如MediaStore)、权限处理以及版本兼容性实践,帮助开发者应对Android 10-13的隐私政策变化。

weixin_28339967的博客 575

Angular基础

创建模块:ng g m module-name --routing创建组件:先切换到模块文件夹(cd module-name),然后创建组件ng g c com-name。

lzl_anonym的博客 1026

华为、Cisco、H3C、中兴网络设备如何配置syslog日志采集

华为、Cisco、H3C、中兴网络设备如何配置syslog日志采集

weixin_40239644的博客 8707

RKNN3588——YOLOv8的PT模型转RKNN模型

1. 首先克隆rknn修改后的ultralytics版本项目到本地主要是修改了源码的ultralytics/nn/modules/head.py和ultralytics/engine/exporter.py两个文件。2. 使用修改后的ultralytics对pt模型进行模型转换,此处的format=rknn代表支持rknn后续的转换,而不是用onnx,一定要注意!!!

张飞飞的博客 7179

查看Angular CLI的可使用版本并同时安装指定版本。

来查看所有可用版本。在 npm 网站上,有 "Versions" 标签页,列出了所有发布的版本信息。这个命令会返回一个 JSON 数组,其中列出了所有发布过的 @angular/cli 版本。通过这些方法,你可以方便地查看和切换到所需的 Angular CLI 版本。这将显示最新的 Angular CLI 版本号。

zwjapple的专栏 3047

三菱FX5U-PLC建立CClink的IO通讯

最新需要用三菱的FX5U的PLC搭建一个CClink通讯,PLC做主站,控制CClink从站的IO,下面2个输入模块AJ65SBTB1-32D,两个输出模块AJ65SBTB1-32T。3、在右侧的部件,选择网络模块:FX5-CCL-MS,CC-link主站模块。依次把加入两个AJ65SBTB1-32D,两个AJ65SBTB1-32T。7、基本设置,网络配置设置,链路刷新设置,设置好下面参数,应用。6、基本设置,网络配置设置,CC-Link配置设置。8、部件选择,模块,右键,添加模块标签。

wzz418550729的博客 1002

angular知识点--@ViewChild详解

ViewChild可以获取到当前组件视图中的单个元素@ViewChildren获取子组件对象列表。

奇怪的人类 1万+

【零基础入门unity游戏开发——unity通用篇12】导入导出unity资源包、设置编程工具、创建脚本(组件)规则、MonoBehaviour基类介绍、脚本模板(基于unity6开发介绍)

导入导出unity资源包、设置编程工具、创建脚本(组件)规则、MonoBehaviour基类介绍、脚本模板(基于unity6开发介绍)

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 760

一文掌握 MongoDB 详细安装与配置(Windows / Linux / macOS 全平台)

本文详细介绍了MongoDB社区版7.0+在Windows、Linux和macOS三大操作系统上的完整安装、配置与安全加固流程。主要内容包括:各平台推荐安装方式(Windows使用MSI安装包、Linux通过官方仓库、macOS通过Homebrew)、基本配置参数说明、服务启动方法以及关键安全措施(如创建管理员用户和启用身份验证)。文章还提供了系统最低要求、下载地址、数据目录设置建议以及生产环境使用注意事项,适合开发、测试及生产环境部署参考。

数据知道的博客 6715

Angular 19 "要" 来了⚡

前言 Angular 19 预计会在 11 月中旬发布,目前 (2024-10-27) 最新版本是 v19.0.0-next.11。 这次 v19 的改动可不小哦,新增了很多功能,甚至连 effect 都 breaking changes 了呢???? 估计这回 Angular 团队又会一如既往的大吹特吹了...好期待哦???? 虽说有新功能,但大家也不要期望太高,毕竟 Angular 这些年走的是简化风,...

weixin_41790027的博客 663

WRFDA如何读取风云四号A 星的GIIRS数据?

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值。

**My Coding Family** 1030

Angular 6.0正式版发布,都有哪些新功能

​​点击关注异步图书,置顶公众号每天与你分享IT好书 技术干货 职场知识​在Angular 5发布半年之后,Angular 6在昨天正式发布,那么在这个版本有哪些新功能呢?新版本重点关注工具链以及工具链在 Angular 中的运行速度问题。除此之外,这次更新还包括框架包(@angular/core、@angular/common、@angular/compiler 等)、Angular CLI、A...

人邮异步社区 1497

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

PCA9422+MK24FN256VDC12嵌入式智能电源管理实战

嵌入式电源管理已从被动供电升级为软件定义的主动调控系统。其核心原理在于通过I²C总线实现MCU与智能PMIC的闭环协同,支持多路可编程电压、软启停时序、实时故障诊断与动态功耗调节。该技术显著提升高可靠性设备(如医疗仪器、工业采集终端)的启动确定性、能效比与可维护性。在电池供电、多传感器融合及精密模拟链路等典型场景中,PCA9422与MK24FN256VDC12的硬件级深度适配——包括严苛I²C时序兼容、微秒级中断响应与低功耗状态联动——构成了当前Kinetis Cortex-M4平台下最紧凑、鲁棒且量产验证

weixin_33826609的博客 337

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

angular在linux下发布时间,Angular 6发布,新功能详解

5月4日,Angular 6.0.0正式发布,新版本重点关注工具链以及工具链在Angular中的运行速度问题。这次更新还包括框架包(@angular/core,@angular/common,@angular/compiler等)、Angular CLI、Angular Material + CDK,这主要是为了解决兼容问题,这些项目的补丁版本将根据项目需求发布。ng updateng updat...

weixin_42625070的博客 379

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Angular发布1.5正式版

Angular团队最近发布了Angular 1.5的正式版,该版本实现了一次重大的升级,它让仍在使用1.X版本的开发者将能够更容易地过渡到Angular 2的开发。 Pete Bacon Darwin...

lumot的博客 752

Angular6 打包组件和模块发布到npm,并使用

Angular6 打包组件和模块发布到npm,并使用组件

m0_37729058的博客 6573

Angular v8 发布!来看看有什么新功能

翻译:疯狂的技术宅 原文:jaxenter.com/whats-new-a… 未经允许严禁转载 Angular 8 终于来了,包括 Ivy 的预览、service worker 支持,差异化加载以及一些锦上添花的东西。 Manfred Steyer 解释了最新 Angular 版本中最重要的变化。 Angular 8 刚刚发布! 完全按照计划,没有任何意外:框架和 CLI 的更新可以通过...

weixin_34206899的博客 231

angular8引入新页面_Angular 6中引入的新功能

angular8引入新页面As we all of us know that Google has just released its new version of Angular i.e. 6.0 in the mid of April 2018. It was the first major release from Google in the year 2018 which is mainl...

cunchi8090的博客 828

Angular 8 正式发布!

(给前端大全加星标,提升前端技能)转自:开源中国Angular 团队5.28号 宣布推出 Angular 8 正式版。作为一个期待已久的重大版本更新,Angular 8 ...

前端大全 1226

Angular4.0.0正式版发布

angular4.0.0正式版现在可以使用了。这也是是自宣布angular改版后,首次发布的专业版本 它向下兼容,支持所有使用了angular2.x.x版本的应用程序。 Angular2版本之后直接迎来Angular4版本。那么Angular4又有哪些新特性呢? 1. 更轻量化、更快 在这个新版本上,做到了让Angular的程序变的更轻量化,更快。但是目前还没有完全的优化完,在接下来的日子

bwf_erg的博客 585
上一篇: 浅析MVVM与MVC设计模式两者之间的优缺点
下一篇: Istio 1.0 正式版发布,可用于生产环境!
hxpjava1
博客等级 码龄19年 1365粉丝 511原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值