找不到姓名+'输入'。任何Angular 2

时间:2017-04-08 04:00:40

标签: javascript angularjs

我想让@Input在Angular 2中使用Typescript。我收到以下错误,我不明白为什么。

  

[ts]找不到姓名'输入'。任何

以下是该组件的代码。

import { Component, OnInit } from '@angular/core';

@Component({
   selector: 'app-item',
   templateUrl: './app-item.component.html',
   styleUrls: ['./app-item.component.css']
})
export class AppItemComponent implements OnInit {
      @Input item; //TypeScript complains here. 

      constructor() { }

      ngOnInit() {}
}

项目和组件都是使用Angular CLI创建的。为什么TypeScript会找出@Input装饰?

3 个答案:

答案 0 :(得分:29)

您需要添加此内容,

import {Component, Input} from '@angular/core';

答案 1 :(得分:2)

就我而言,我已经有:

import { Component, OnInit } from '@angular/core'; 

所以,当我尝试使用时:

import {Component, Input} from '@angular/core';

它没有用。

我要做的就是这样导入(没有Component一词)

import { Input } from '@angular/core';

效果很好

答案 2 :(得分:0)

@Marcielli,由于Component的双重导入而无法使用。如果将import语句更改为以下

import { Component, OnInit, Input } from '@angular/core';

您会很好。 (可选)在单独的import语句中添加Input模块非常好,但是您通常应该坚持在一个语句中从模块中导入所有组件,或者在单独的语句中将每个组件导入。