组件的三大必备元素
@component()装饰器:
告知anguler框架如何处理一个tipsctiop类,包含多个属性,这些属性的值叫做元数据。anguler会根据元数据的值来渲染组件并执行组件的逻辑
@template模板:
通过组件自带的模板来定义组件的外观,模板以HTML的形式存在,告诉anguler来如何渲染组件,一般来说模板很想HTML,但是我们可以在模板中使用anguler的数据绑定语法来呈现控制器中的数据
@controller控制器:
一个普通的ts类,他会被装饰器来装饰,控制器包含组件的所有属性和方法,绝大多数的页面逻辑都是写在控制器里的,控制器通过数据绑定与模板来通讯,模板展现控制器的数据,控制器处理模板上发生的事件
可选的可注入对象
@inputs()输入属性:
用来接收外部传来的数据,输入属性是的父组件可以直接传递数据给子组件
providers提供器:
用来做依赖注入
可选的输出文件
Lifecycle hooks 生命周期钩子:
在一个组件从创建到销毁的过程中,有多个钩子可以被用来触发和执行各种业务逻辑。
styles样式表:
组件可以关联一些样式表文件,来提供一些组件专用的样式,没有样式表只有模板也是可以的。
animations动画:
为anguler提供了一个动画包来为我们更方便的创建与组件相关的动画效果
@outputs输出属性:
与输入属性是相对的,用来定义一些其他组件可能会感兴趣的事件,用来在组件间共享数据