官术网_书友最值得收藏!

Components in Angular

Angular took this approach by introducing new building blocks called components. Components extend the directive concept we described in the previous section and provide a broader functionality. Here is the definition of a basic Hello world component:

@Component({ 
  selector: 'hello-world', 
  template: '<h1>Hello, {{target}}!</h1>' 
}) 
class HelloWorld { 
  target: string; 
  constructor() { 
    this.target = 'world'; 
  } 
} 

We can use it by inserting the following markup in our view:

<hello-world></hello-world> 
According to the best practices, we should use a selector of type element for components since we may have only a single component per DOM element.

We will take a look at the preceding syntax in more detail later in this book. Now let's briefly describe the functionality that this component provides. Once the Angular application is bootstrapped, it will look at all the elements in the DOM tree and process them. When it finds an element called hello-world, it will invoke the logic associated with its definition, which means that the template of the component will be rendered and the expression between the curly brackets will be evaluated. This will result in the <h1>Hello, world!</h1> markup.

So, to summarize, the Angular core team separated out the directives from AngularJS into two different parts: components and directives. Directives provide an easy way to attach behavior to the DOM elements without defining a view. Components in Angular provide a powerful, and yet simple-to-learn API, which makes it easier to define the user interface of our applications. Angular components allow us to do the same amazing things as AngularJS directives, but with less typing and fewer things to learn. Components extend the Angular directive concept by adding a view to it. We can think of the relation between Angular components and directives the same way as the relation between Composite and Leaf from the diagram we saw in Figure 5.

Conceptually, we can present the relation between directives and Components as inheritance. Chapter 5, Getting Started with Angular Components and Directives, describes these two concepts in further detail.

主站蜘蛛池模板: 四平市| 阆中市| 鄯善县| 文水县| 息烽县| 房产| 吴江市| 南通市| 丰宁| 龙里县| 桐柏县| 富蕴县| 辰溪县| 万宁市| 斗六市| 达州市| 多伦县| 郓城县| 固原市| 酒泉市| 新平| 江西省| 阳朔县| 保德县| 钦州市| 水富县| 衡水市| 许昌市| 贵溪市| 通海县| 蓝山县| 保靖县| 绿春县| 宁夏| 页游| 惠水县| 弋阳县| 个旧市| 于田县| 鱼台县| 西畴县|