@ Component在angular2中做了什么

时间:2016-07-28 15:40:28

标签: angular

我是角色2的新手。我理解import语句意味着我们在此文件中包含组件类。

我的问题是谁解释了为什么我们需要@Component注释它究竟做了什么?

import {component} from '@angular2/core';

@component
{

}


export class MyComponent
{

}

3 个答案:

答案 0 :(得分:0)

它向类MyComponent添加元数据它实际上使类成为一个组件 没有它,该类将是一个普通的打字稿类

此处提供更多信息:http://blog.thoughtram.io/angular/2015/05/03/the-difference-between-annotations-and-decorators.html

答案 1 :(得分:0)

@Component注释是Typescript decorator。装饰器是一种特殊的声明,可以附加到类声明,方法,访问器,属性或参数。

Angular的Component注释将所需的框架构建块应用于Angular2中的可用组件。更具体地说:

  

@Component注释指定何时实例化组件,以及它绑定到哪些属性和hostListeners。

另见Component decorator on Angular.io

答案 2 :(得分:0)

您可以将@Component视为一个配合函数 class,并且该注释实际上将您的类转换为Angular组件。

Angular在内部解析@Component注释(以及所有注释),并生成向该类添加请求行为的其他代码。

如果你查看你的类的转换代码,你可以看到Angular对@Component注释的作用,如:

MyComponent = (function () {
   function MyComponent() {
      ...
   }
   ...