由于我的app.component得到了模板文件的名称: client / imports / app / app.component.html
代替处理模板及其内容。
这是我的组件代码:
import { Component, NgZone } from '@angular/core';
import { Location } from '@angular/common';
import { Router } from '@angular/router';
import template from './app.component.html';
@Component({
selector: 'app-root',
template,
})
export class AppComponent {
user: Meteor.User;
constructor(private router: Router, zone: NgZone, location:Location) {
Tracker.autorun(() => {
if (Meteor.user())
{
zone.run(() => {
this.user = Meteor.user();
});
}
else
{
this.user = undefined;
}
});
}
isMenuActive(value)
{
return location.pathname.indexOf(value) !== -1;
}
isHome()
{
return location.pathname == ""
}
}
关于它为什么似乎不再起作用的任何想法?
谢谢
答案 0 :(得分:0)
使用angular component-metadata文档中所述的Component
装饰器。
写这个import template from './app.component.html';
是错误的,因为您的模板html没有成员称为 template 。
您可以这样改写装饰器:
@Component({
selector: 'app-root',
templateUrl: './app.component.html'
})
答案 1 :(得分:0)
Angular Meteor编译器软件包的用法更改了angular的几个版本。查找信息的地方是编译器存储库本身。有一个示例应用程序。
https://github.com/Urigo/angular-meteor/tree/master/examples/MeteorCLI/all-in-one
基本上,您不需要导入模板,而是通过templateurl引用
例如
@Component({
selector: 'app',
templateUrl: 'app.component.html'
})