我正在尝试使用角度js 2中的以下代码加载Html文件.此文件在产品文件夹下可用,我尝试加载的html文件也在同一文件夹中.它仍然没有用.
import {Component} from 'angular2/core';
@Component({
templateUrl:'./products/app.component.pen.html'
})
export class PenComponent
{
}
Run Code Online (Sandbox Code Playgroud)
上面的文件是从下面的AppComponent加载的.
import {Component} from 'angular2/core';
import {RouteConfig, ROUTER_DIRECTIVES} from "angular2/router";
import {PenComponent} from "./products/app.component.pen";
import {BookComponent} from "./products/app.component.book";
@Component({
selector: 'my-app',
template: `
<header>
<ul>
<li>
<a [routerLink]="['Pen']">Pen</a></li>
<li>
<a [routerLink]="['Book']">Book</a></li>
</ul>
</header>
<router-outlet></router-outlet>
`,
directives: [ROUTER_DIRECTIVES]
})
@RouteConfig([
{path: '/pen', name: 'Pen', component: PenComponent, useAsDefault:true}
{path: '/book', name: 'Book', component: BookComponent}
])
export class AppComponent {
}
Run Code Online (Sandbox Code Playgroud)
dre*_*ore 26
您必须为styleUrls和templateUrls使用相对于项目根目录的路径(因此app/foo/bar/products/app.component.pen.html而不是./products/app.component.pen.html).
要使用相对于组件文件的URL,您的项目必须是一个commonjs模块("module":"commonjs"在tsconfig中设置),并且必须包含module.id在组件装饰器中:
@Component({
selector: 'foo',
moduleId: module.id // <== need this
templateUrl: './foo.html'
})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11824 次 |
| 最近记录: |