错误:未找到MyAppComponent的模板

时间:2015-04-27 15:27:50

标签: angularjs

我已按照Angular 2 Quickstart指南操作,但收到以下错误:

  

Token(AppView)实例化期间出错!原始错误:错误:   找不到MyAppComponent的模板

这是相关代码:

<MenuItem ... 
    IsEnabled="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type ContextMenu}}, Path=PlacementTarget.SelectedItems, Converter={StaticResource HasItems}}"/>

遵循Duncan Booth的建议http://blog.ionic.io/angular-2-series-introduction/我做了以下更改,一切正常:

import {Component, View} from 'angular2/core';
import {bootstrap} from 'angular2/platform/browser'
// Note I've changed Template to View here as I think it is a typo

....

@View({
  template: '<h1>Hello {{ name }}</h1>'
})

....

但是,yesimahuman在同一个链接上的评论中提到“视图是新语法”,似乎就是PlunkerAngular 2 Step by Step Guide所示的情况。

那么为什么Quickstart代码会抛出错误以及什么是正确的修复?

2 个答案:

答案 0 :(得分:1)

我认为你需要检查一下

import {Component, Template, bootstrap} from 'angular2/angular2';

@Component({
    selector: 'my-app'
})
@Template({
    inline: '<h1>Hello {{ name }}</h2>'
})

class MyAppComponent {
    constructor() {
        this.name = 'Alice';
    }
}

bootstrap(MyAppComponent);

答案 1 :(得分:0)

只是为了澄清:如果你需要包含一些指令,你应该这样做:

import {Component, Template, View, CSSClass, NgFor, bootstrap} from 'angular2/angular2';

// Component annotations ..
@Component({
    selector: 'my-app'
})
@Template({
    url: 'templates/layout.html'
})
@View({
    directives: [CSSClass, NgFor]
})

然后在代码中你可以使用[class],* ng-for等:)