search

Home  >  Q&A  >  body text

angular.js - Angular 2 appInjector 导致错误问题

根据 https://angular.io/docs/js/latest/guide/displaying-data.html 一步一步做, 在引用类上出了问题.

TypeScript 编译:

tsc --watch -m commonjs

"compilerOptions": {
    "emitDecoratorMetadata": true,
    "module": "amd",
    "target": "es5"
}

原始代码为:

/// <reference path="typings/angular2/angular2.d.ts" />
import {Component, View, bootstrap, NgFor} from 'angular2/angular2';

@Component({
  selector: 'display',
  appInjector: [FriendsService]
})

@View({
  template: `
  <p>My name is {{ myName }}</p>
  <p>Friends:</p>
  <ul>
     <li *ng-for="#name1 of names">
        {{ name1 }}
     </li>
  </ul>
  `,
  directives: [NgFor]
})

class DisplayComponent {
  myName: string;
  names: Array<string>;
  constructor(friendsService: FriendsService) {
    this.myName = 'Alice';
    this.names = friendsService.names;
  }
}

class FriendsService {
  names: Array<string>;
  constructor() {
    this.names = ["Alice", "Aarav", "Martín", "Shannon", "Ariana", "Kai"];
  }
}

bootstrap(DisplayComponent);
漂亮男人漂亮男人2751 days ago686

reply all(2)I'll reply

  • 黄舟

    黄舟2017-05-15 16:55:52

    Just move FriendsService to it

    reply
    0
  • 仅有的幸福

    仅有的幸福2017-05-15 16:55:52

    https://github.com/kittencup/angular2-ama-cn/issues/11 has specific solutions

    reply
    0
  • Cancelreply