【发布时间】:2017-12-05 15:55:45
【问题描述】:
我正在尝试遵循官方 Angular 文档:
https://angular.io/tutorial/toh-pt2
但由于此错误而无法继续:
编译失败。
C:/Users/username/Desktop/my-app/src/app/heroes/heroes.component.ts (3,24):
File 'C:/Users/username/Desktop/my-app/src/app/mock-heroes.ts' is not a module.
我的代码与教程中的完全一样,这真是令人沮丧,来自官方文档,让我什至不想学习 Angular :( 有人知道如何克服它吗?
mock-heroes.ts:
import { Hero } from './hero';
export const HEROES: Hero[] = [
{ id: 11, name: 'Mr. Nice' },
{ id: 12, name: 'Narco' },
{ id: 13, name: 'Bombasto' },
{ id: 14, name: 'Celeritas' },
{ id: 15, name: 'Magneta' },
{ id: 16, name: 'RubberMan' },
{ id: 17, name: 'Dynama' },
{ id: 18, name: 'Dr IQ' },
{ id: 19, name: 'Magma' },
{ id: 20, name: 'Tornado' }
];
hero.ts:
export class Hero {
id: number;
name: string;
}
heroes.components.ts:
import { Component, OnInit } from '@angular/core';
import { Hero } from '../hero';
import { HEROES } from '../mock-heroes';
@Component({
selector: 'app-heroes',
templateUrl: './heroes.component.html',
styleUrls: ['./heroes.component.css']
})
export class HeroesComponent implements OnInit {
heroes = HEROES;
constructor() { }
ngOnInit() {
}
}
heroes.component.html:
<h2>My Heroes</h2>
<ul class="heroes">
<li *ngFor="let hero of heroes">
<span class="badge">{{hero.id}}</span> {{hero.name}}
</li>
</ul>
【问题讨论】:
-
您说您的文件是
heroe.ts但您是import { Hero } from '../hero';- 这是您的文件名中的错字还是您的问题? -
@JamieBarker 很好,不,这只是问题中的错字。我会编辑它。
-
您也可以在bottom of that page you linked 下载项目。下载它或查看 Plunkr 并将您所拥有的与他们所拥有的进行比较以查看问题所在可能是一个好主意(假设他们的工作正常)
-
这是基于意见的,正如我在 quora 的回答中指出的那样,Angular 团队承担了太多的工作,并且没有很好地更新文档。我在尝试学习他们的教程时遇到了同样的问题,所以我放弃了,只学习了其他书籍和 API 文档。
-
@RudolfOlah 大约是 2017 年 10 月中旬,以当时的最新版本为准。
标签: javascript angular