前端人员该怎么面试?经典Angular面试题有哪些?AngularJS是一个JavaScript框架,是一个以JavaScript编写的库。它可通过
1、解释Angular 2应用程序的生命周期hooks是什么?
Angular 2组件/指令具有生命周期事件,是由@angular/core管理的。@angular/core会创建组件,渲染它,创建并呈现它的后代。当@angular/core的数据绑定属性更改时,处理就会更改,在从DOM中删除其模板之前,就会销毁掉它。Angular提供了一组生命周期hooks(特殊事件),可以被分接到生命周期中,并在需要时执行操作。构造函数会在所有生命周期事件之前执行。每个接口都有一个前缀为ng的hook方法。例如,ngOnint界面的OnInit方法,这个方法必须在组件中实现。
#FormatImgID_0#
2、事件发射器如何在Angular 2中工作的?
Angular 2不具有双向digest cycle,这是与Angular 1不同的。在Angular2中,组件中发生的任何改变总是从当前组件传播到其所有子组件中。如果一个子组件的更改需要反映到其父组件的层次结构中,我们可以通过使用事件发射器api来发出事件。简而言之,EventEmitter是在@ angular/core模块中定义的类,由组件和指令使用,用来发出自定义事件。
3、如何优化Angular 2应用程序来获得更好的性能?
优化取决于应用程序的类型和大小以及许多其他因素。一般来说,在优化Angular 2应用程序时要考虑以下几点:
1)考虑AOT编译。
2)确保应用程序已经经过了捆绑,uglify和tree shaking。
3)确保应用程序不存在不必要的import语