我在跟踪构件-相对路径角文档。
根据说明,我将组件ts和组件html保存在同一个目录中。为了解决这个问题,这个目录是/app/components/first。
我的组件ts包含以下代码,名为First.component.ts
import {Component, Injectable} from '@angular/core';
import {MyService} from "../../service/MyService";
import {ValueObj} from "../../value/ValueObj";
@Component({
moduleId: module.id,
selector: 'relative-path',
templateUrl: 'First.component.html',
providers: [MyService]
})
@Injectable()
export class FirstComponent {
public valueObjs: ValueObj[];
constructor(private _myService: MyService) {}
getAllItems(): void {
this._myService.getAllValueObjs().subscribe(
data => this.valueObjs= data, error=> console.log(error),
() => console.log("getting complete"));
}
}我的First.component.html包含以下代码:
<form (ngSubmit)="getAllItems()">
<label>Value Objects</label>
<button type="submit">Search</button>
</form>
<hr>
<p style="color:red">{{error}}</p>
<h1>All Objects</h1>
<div *ngFor="let valueObj of valueObjs">{{valueObj.name}}</div>我看过这个解决方案,选择器"my-app“与任何元素不匹配。,但是,我认为它不适用。我的main.ts文件只包含以下内容:
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app.module';
// start the application
const platform = platformBrowserDynamic();
platform.bootstrapModule(AppModule); 也没有提到BrowserModule。我也看过为什么会出现错误“选择器不匹配任何元素”?,但是,我没有boot.ts文件来比较我的值。
最后,我看了Angular2 CLI构建异常:选择器"app-root“不匹配任何元素。,但是,在我的packaging.json中,我没有提到角的普遍性.
知道我做错了什么吗?
发布于 2016-11-02 00:39:52
我刚才也有同样的问题,这个例子有点让人困惑。这句话:
selector: 'relative-path', 只是组件的示例名称,它不是使用相对路径的命令。
简单地添加moduleId行将使相对路径正常工作,因此您可以将selector保留为“第一个组件”或您以前拥有的任何东西。
错误消息实际上是想说,您现在拥有的选择器(“相对路径”)与index.html文件中的内容不匹配。只有当您更改bootstrap条目中的app.module中的组件时,才会发生这种情况。如果您对非引导模块有相同的问题,您将得到一个更清晰的错误消息。
https://stackoverflow.com/questions/40128524
复制相似问题