博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
NG2&4折腾记 --- 记NG2升级NG4 RC1之修正问题跑起来
阅读量:6824 次
发布时间:2019-06-26

本文共 1520 字,大约阅读时间需要 5 分钟。

前言

尝试把正式项目NG2.X升级到RC1。。修正一些问题可以正确跑起来,等下回滚嗯。。。


问题1:template标签已经废弃了

  • 信息来源:启动的时候控制台有提示,官方日志也有说
  • 解决方案:全局搜索<template></template> ,替换<ng-template></ng-template>

问题2: 动画已经独立出一个专门的模块

  • 信息来源:官方文档,及手动不信邪尝试【动画的一些引入已经不包含在@angular/core】了;

  • 解决方案:

    • 手动搜索引入动画的页面,还好之前有过分离一下,改起来不是很多(个别写在components的比较难找)
// 1. 先把动画模块安装上cnpm install -S  @angular/animations; [-S : save ]// 2.在根模块注入相关的模块(app.module.ts)import { BrowserAnimationsModule } from "@angular/platform-browser/animations"// 3. 之后和平时使用动画差不多,在需要的地方引入相关的指令,接口什么的import { trigger, state, style, transition, animate } from '@angular/animations';复制代码

问题3: 代码需要更加严谨和严格【可能是升级到TS2.1+的原因,亦或者内部啥的】

举个栗子

// 之前的代码 =》会提示报错// 获取当前URL -- 本来就是简单一个获取url的检测对象this.router.events.subscribe((evt) => {  console.log(evt);  this.current_url = evt.url;  this.isExpend(evt.url);});// 修正 -- 需要给传入参数指定对应的类型;// 我是特意去打印出来,有什么鬼,一一指定,,懒的可以直接指定:any// 获取当前URLthis.router.events.subscribe((evt: { id: number, url: string, urlAfterRedirects: string }): void => {  console.log(evt);  this.current_url = evt.url;  this.isExpend(evt.url);});复制代码

至此我的项目基本跑起来了,动画什么也正常了,等会回退下。

说完这些破问题,来说NG4有什么亮点?**


NG4的亮点

  1. 新的视图引擎,据说能让渲染更快
  2. 加强了*ngIf,里面可以写else了,这里直接拿官方的写法
    Loading...
    {
    { user.name }}
    复制代码
  3. 动画独立出模块,可以自行选择是否引入来控制打包的体积
  4. 升级到TS2.1
  5. 内部编译可以使用StrictNullChecks -- null判断
  6. 通用? 没深究,大概的意思是服务端也可以跑NG,换个名字"服务端渲染!!"
  7. 模块扁平化,rolluptree-shaking特性,没使用到的模块不再打包进去
  8. 支持ES2015模块化写法进行扁平化

总结

正式项目还是不推荐升级到ANGULAR 4 RC1哈,反正下个月正式版就发布了;

再打一次辟谣:NG2->NG4不是重构,只是常规升级【统一版本而已,目前路由是3.x】,

NG团队说以后不再以版本号为核心,统称angular,下半年NG5要出来了。。。

转载地址:http://korzl.baihongyu.com/

你可能感兴趣的文章
大数据各种实用网站
查看>>
win7安装laravel
查看>>
Oracle 各后台进程功能说明
查看>>
屏蔽storm ui的kill功能
查看>>
我的友情链接
查看>>
Oracle Decode函数的使用
查看>>
MSF学习笔记
查看>>
经典脚本案例--check memory
查看>>
20.31 expect脚本同步文件;20.32 expect脚本指定host和要同步的文件;20.33 构建文件分发系统;20.34...
查看>>
CentOS单用户与救援模式
查看>>
postfix 源码centos7上搭建及错误提示---亲测
查看>>
【Redis篇】Redis集群安装与初始
查看>>
jquery基础
查看>>
C# 集合已修改;可能无法执行枚举操作
查看>>
FSM Code Generator
查看>>
JDBC学习笔记——事务、存储过程以及批量处理
查看>>
JVM内存结构
查看>>
Java 锁
查看>>
7、索引在什么情况下遵循最左前缀的规则?
查看>>
c#中委托与事件
查看>>