gpt4 book ai didi

angular - 将应用程序升级到 Angular2 RC6

转载 作者:太空狗 更新时间:2023-10-29 17:45:43 24 4
gpt4 key购买 nike

我刚刚将我的应用程序从 angular2 RC5 更新到 RC6,但我仍然在选择器处遇到错误

这是控制台

> Unhandled Promise rejection:
>
> Template parse errors: 'time-filter' is not a known element:
> 1. If 'time-filter' is an Angular component, then verify that it is part of this module.
> 2. If 'time-filter' is a Web Component then add "CUSTOM_ELEMENTS_SCHEMA" to the '@NgModule.schema' of this component
> to suppress this message. ("<div> [ERROR
> ->]<time-filter></time-filter>

这是我的组件代码:

@Component({
selector: 'time-filter',
templateUrl: '../app/shared/time-filter/time-filter.html',
providers: [TimeService]
})

export class TimeFilter implements OnInit
{..}

我就是这么叫它的

import { Component, NgModule,SchemaMetadata } from '@angular/core';
import {TimeFilter} from '../shared/time-filter/time-filter.component';

@Component({
template: `<div>
<time-filter></time-filter>
</div>
`

})
@NgModule({
declarations: [TimeFilter]
})

最佳答案

@Component中,添加selector并在@NgModule的声明中定义相同的组件。

像这样创建 AppComponent-

import { Component } from '@angular/core';
import { TimeFilter } from '../shared/time-filter/time-filter.component';

@Component({
selector: 'my-app',
template: `<div>
<time-filter></time-filter>
</div>
`
})

然后像这样在 AppModule 中声明两个组件-

@NgModule({
imports: [BrowserModule],
declarations: [AppComponent, TimeFilter]
bootstrap: [AppComponent]
})
export class AppModule { }

此外,不要在单个文件中混合使用 @component@ngmodule请为每个文件定义一件事(例如服务或组件)。请参阅 angular2 style guide

看看这是否有帮助。

关于angular - 将应用程序升级到 Angular2 RC6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39318166/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com