簡體   English   中英

如何在沒有裝飾器的情況下將 Angular2 與 ES6 一起使用?

[英]How to use Angular2 with ES6 without decorators?

按照Angular 2網站上的 ES5 快速入門,我得到了以下內容:

mycomponent =
    ng.core.Component({
        ...
    })
    .Class({
        constructor: function() {}
    });

我想知道如何將 .Class 方法換成適當的ES6 class但不使用decorators (因為它們還不是 ES 標准的一部分)

您可以對ComponentMetadata類的annotations屬性使用 getter,如下所述:

import {ComponentMetadata,Inject} from 'angular2/core';
import {FormBuilder} from 'angular2/common';

export class AppComponent {
  constructor(fb) {
    console.log(fb);
  }

  static get parameters() {
    return [[FormBuilder]];
  }

  static get annotations() {
    return [
      new ComponentMetadata({
        selector: 'my-app',
        template: `
          <div>
            Test
          </div>
        `
      })
    ];
  }
}

看到這個 plunkr: https ://plnkr.co/edit/VqDSDuroK29iAxGzA5Lc ? p = preview

你會注意到像 Babel 這樣的工具支持裝飾器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM