zoukankan      html  css  js  c++  java
  • Angular2组件开发—模板语法(二)

    directives - 使用组件

    在Angular2中,一个组件的模板内除了可以使用标准的HTML元素,也可以使用自定义的组件!

    这是相当重要的特性,意味着Angular2将无偏差地对待标准的HTML元素和你自己定义的组件。这样, 你可以建立自己的领域建模语言了,这使得渲染模板和视图模型的对齐更加容易,也使得模板的语义性 更强:

    声明要在模板中使用的组件

    不过,在使用自定义组件之前,必需在组件的ViewAnnotation中通过directives属性声明这个组件:

    1 @View({
    2     directives : [EzComp],
    3     template : "<ez-comp></ez-comp>"
    4 })

    你应该注意到了,directives属性的值是一个数组,这意味着,你需要在这里声明所有你需要在模板 中使用的自定义组件。

    例如:

     1 <!doctype html>
     2 <html>
     3 <head>
     4     <meta charset="utf-8">
     5     <title>template - component </title>
     6     <script type="text/javascript" src="lib/system@0.16.11.js"></script>
     7     <script type="text/javascript" src="lib/angular2.dev.js"></script>
     8     <script type="text/javascript" src="lib/system.config.js"></script>
     9 </head>
    10 <body>
    11     <ez-app></ez-app>
    12     <script type="module">
    13         import {Component,View,bootstrap} from "angular2/angular2";
    14         
    15         @Component({selector:"ez-app"})
    16         @View({
    17             directives:[EzCard,EzLogo],
    18             template:`
    19                 <div class="ez-app">
    20                     <h1>EzApp</h1>
    21                     <ez-card></ez-card>
    22                     <ez-logo></ez-logo>
    23                 </div>`
    24         })
    25         class EzApp{}
    26         
    27         @Component({selector : "ez-card"})
    28         @View({
    29             template : `
    30                 <div class="ez-card">
    31                     <h1>EzCard</h1>
    32                 </div>`
    33         })
    34         class EzCard{}
    35         
    36         @Component({selector : "ez-logo"})
    37         @View({
    38             template : `
    39                 <div class="ez-logo">
    40                     <h1>EzLogo</h1>
    41                 </div>`
    42         })
    43         class EzLogo{}
    44         
    45         bootstrap(EzApp);
    46     </script>
    47 </body>
    48 </html>
  • 相关阅读:
    YARN源码学习(七)-----Task级别GC相关指标的自定义counter添加
    YARN源码学习(七)-----Task级别GC相关指标的自定义counter添加
    YARN源码分析(八)-----Reduce Shuffle过程分析
    YARN源码分析(八)-----Reduce Shuffle过程分析
    【每天一道算法题】整数循环节之和——数字黑洞6174
    getline函数
    设计模式之建造者模式Builder(创建型)
    字符串算法总结
    C++设计模式之单例模式
    Linux下C的线程同步机制
  • 原文地址:https://www.cnblogs.com/gett/p/5037240.html
Copyright © 2011-2022 走看看