我在Visual Studio 2017中使用最新的SPA模板:
模板项目工作得很好 .
我完成了这样的根模块:
export class AppComponent {
pageTitle: string = 'Angular 2';
}
和navmenu组件一样:
<a class='navbar-brand' [routerLink]="['/home']">{{pageTitle}}</a>
但是没有显示新 Headers
我是Angular 2的新人,所以我想我误解了一些事情 . 但我不知道提供的样本有什么不同(fetchdata,counter)
2 回答
请注意,您正在尝试访问父组件中定义的变量(app是nav-menu的父级) .
这可以使用@Input完成,如本答案中所述:Angular2: child component access parent class variable/function
添加“输入”作为导入并创建 Headers @Import .
通过app html中的 Headers .
更新nav-menu html以使用子变量名称 .
有关组件交互的更多信息,请参阅以下内容:https://angular.io/guide/component-interaction
好的 - 我已经在Visual Studio 2017中使用最新的针对dotnetcore2的SPA模板,我将粘贴每个需要同步的部分的代码以使其正常运行 .
变量名称非常长,因此更容易跟踪或跟踪其中的位置和原因 . 希望这可以帮助
在App组件ts文件中,我有以下代码定义页面 Headers 的属性:
在App Component HTML中定义了Input钩子,它利用了App组件中的这个变量:
然后在Nav Component Typescript文件中添加Input和property,如下所示:
最后,在子组件(Nav)组件中定义的变量在该组件的HTML显示模板中使用:
希望有所帮助