我正在为Angular上的类编写代码,并且无法理解为什么从我的组件中拉出@Input装饰器会导致整个应用程序无法加载。
import { Component, OnInit, Input } from '@angular/core';
import { Dish } from '../shared/dish';
import { DishService } from '../services/dish.service';
import { Params, ActivatedRoute } from '@angular/router';
import { Location } from '@angular/common';
@Component({
selector: 'app-dishdetail',
templateUrl: './dishdetail.component.html',
styleUrls: ['./dishdetail.component.scss']
})
export class DishdetailComponent implements OnInit {
@Input()
dish: Dish;
constructor(private dishservice: DishService,
private route: ActivatedRoute,
private location: Location) { }
ngOnInit() {
let id = +this.route.snapshot.params['id'];
this.dish = this.dishservice.getDish(id);
}
}

输入组件在应用程序的任何其他位置都没有使用,据我所知,即使对这个组件也没有那么强烈相关,所以任何人都可以解释为什么当我删除那个装饰器时,它打破了我的计划?
答案 0 :(得分:2)
如果你只是打开浏览器的控制台,你会看到一个很大的错误信息,说像
无法绑定到'dish',因为它不是'app-dishdetail'的已知属性
此外,错误消息会告诉您尝试绑定到dish
的确切位置。