Angular 5和Angular 6有什么不同。如何将我们的应用程序从Angular 5更新到Angular 6。
Angular 5和Angular 6之间的主要区别是什么?
发布于 2018-06-28 18:00:23
Angular 6更改:
1) Typescript 2.7+支持
2)添加角度材料和CDK稳定性
3)组件开发工具包( Component Dev Kit,CDK )-CDK允许您使用Angular材质构建自己的UI组件库。
4)改进了装饰器错误消息
5)修复通用平台检测示例
6)常春藤渲染器-它是一个新的向后兼容和主要关注的领域-速度提高,尺寸减小,灵活性增加。
7)添加要渲染的afterContentInit和afterContentChecked
8)增加对nativeElement的支持
9)为ElementRef添加可选的泛型类型,示例如下- @ViewChild('your-element') yourElement:ElementRef;
10) Bazel编译器- Bazel只重建需要的部分。
11)添加了测试注释
12)为计划的组件添加缺少的生命周期测试
13) Closure Compiler - Closure编译器始终生成较小的包。
14)将QueryPredicate重命名为LQuery,将LQuery重命名为LQueries
15) Service Worker - Service worker是在web浏览器中运行的脚本。它还管理应用程序的缓存。
16) FormBuilder的数组方法增加多个验证器
17)处理带和不带线边界的字符串-现在在模式验证器上处理带和不带线边界(^ & $)的字符串。以前,它使用字符串而不是边界。
18) AbstractControl statusChanges -以前的版本,当你调用“markAsPending”时不会发出事件,但现在当我们调用AbstractControl markAsPending时会发出"PENDING“事件。
19) NgModelChange上的更新-现在在其控件上的值和有效性更新后发出。以前,它是在更新之前发出的。
20)允许HttpInterceptors注入HttpClient -以前,尝试直接注入HttpClient的拦截器会收到循环依赖错误,因为HttpClient是通过注入拦截器实例的工厂构造的。用户希望将HttpClient注入拦截器来进行支持。
无论是HttpClient还是用户都必须特别处理循环依赖。这一变化将责任转移到了HttpClient本身。通过利用在请求时延迟加载拦截器集的新类HttpInterceptingHandler,可以直接将HttpClient注入拦截器,因为HttpClient的构造不再需要构造拦截器链。
21)将navigationSource和restoredState添加到NavigationStart -目前,NavigationStart无法知道导航是强制触发的还是通过位置更改触发的。对于不同的用例(例如,滚动位置恢复),这两种用例应该有不同的处理方式。此PR添加导航源字段和恢复的导航id (传递给由URL更改触发的导航)。
22)向指令def添加类型和钩子
23)启用最小CLI render3应用程序的大小跟踪
24)添加规范视图查询
25)语言服务-Typescript的“resolveModuleName”2.6版本开始要求传递的路径用'/‘分隔,而不是能够处理'\’。
有关更多细节,请访问:Click Here
发布于 2018-06-22 19:40:23
发布于 2018-09-04 02:48:40
在Angular 6中,默认情况下,此装饰器配置有一个"providedIn"属性,该属性为服务创建一个提供者。在本例中,providedIn:' root‘指定应该在根注入器中提供服务。
@Injectable({
providedIn: 'root'
})
export class ApiService{
//.......}https://stackoverflow.com/questions/50720563
复制相似问题