Angular 2.0 发布:管道和指令不再是 @Component 的属性
Posted
技术标签:
【中文标题】Angular 2.0 发布:管道和指令不再是 @Component 的属性【英文标题】:Angular 2.0 Release: Pipes and Directives are not properties of @Component anymore 【发布时间】:2017-01-25 03:09:01 【问题描述】:我刚刚将我在 RC5 上构建的应用升级到最终版本,我对现在应该声明指令和管道的方式感到困惑。我收到此错误:
[默认] C:\xampp\htdocs\meriem-car\public\src\app\components\administration.component.ts:12:4 中的错误 ' moduleId: string; 类型的参数选择器:字符串;指令:typeof LoginComponent[];模板网址:字符串; ' 不可分配给“组件”类型的参数。 对象字面量只能指定已知属性,而“组件”类型中不存在“指令”。
【问题讨论】:
【参考方案1】:自 RC6 起,所有指令和管道都应移至模块的 declarations
。
@NgModule(
imports: [...],
declarations: [
//you insert your Components, Directives and Pipes here
],
bootstrap: [...],
providers: [...]
)
export class AppModule
【讨论】:
@ESturzenegger 您是否从组件中删除了directives
?
sry 删除我的问题:“即使将其添加到声明中,它也会显示相同的错误”@StefanSvrkota 是的,我做到了。有趣的是:管道有效,但错误显示在我的 cli 中。
@ESturzenegger 好吧,我真的不知道,请尝试重新启动/刷新您的项目。真的很奇怪。
@StefanSvrkota 根据文档是管道属性不存在:angular.io/docs/ts/latest/api/core/index/…以上是关于Angular 2.0 发布:管道和指令不再是 @Component 的属性的主要内容,如果未能解决你的问题,请参考以下文章
如何在服务和指令脚本文件中使用angular2内置日期管道[重复]
combineLatest 重构 @deprecated — 不再支持 resultSelector,而是使用管道映射?