尝试把正式项目NG2.X升级到RC1。。修正一些问题可以正确跑起来,等下回滚嗯。。。
<template></template>
,替换<ng-template></ng-template>
@angular/core
】了;
// 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';复制代码
举个栗子
// 之前的代码 =》会提示报错
// 获取当前URL -- 本来就是简单一个获取url的检测对象
this.router.events.subscribe((evt) => {
console.log(evt);
this.current_url = evt.url;
this.isExpend(evt.url);
});
// 修正 -- 需要给传入参数指定对应的类型;
// 我是特意去打印出来,有什么鬼,一一指定,,懒的可以直接指定:any
// 获取当前URL
this.router.events.subscribe((evt: { id: number, url: string, urlAfterRedirects: string }): void => {
console.log(evt);
this.current_url = evt.url;
this.isExpend(evt.url);
});复制代码
至此我的项目基本跑起来了,动画什么也正常了,等会回退下。 说完这些破问题,来说NG4有什么亮点?**
*ngIf
,里面可以写else
了,这里直接拿官方的写法<ng-template #loading>Loading...</ng-template> <div *ngIf="userObservable | async; else loading; let user"> {{ user.name }} </div>复制代码StrictNullChecks
-- null判断rollup
的tree-shaking
特性,没使用到的模块不再打包进去正式项目还是不推荐升级到ANGULAR 4 RC1
哈,反正下个月正式版就发布了;
再打一次辟谣:NG2->NG4不是重构,只是常规升级【统一版本而已,目前路由是3.x】, NG团队说以后不再以版本号为核心,统称angular,下半年NG5要出来了。。。