【发布时间】:2017-02-03 01:30:58
【问题描述】:
我是 Angular2 和 Typescript 的新手。我正在尝试从我的类中的构造函数访问@Input。从构造函数内部调用了一个服务,我需要向它传递一个参数。
@Component({
selector:'side-menu',
templateUrl:'menu.html',
providers: [MenuService]
})
export class SideMenuComponent {
@Input() blockType;
menuItems
constructor(menuService:MenuService){
this.menuItems = menuService.getMenuItems(this.blockType); // Sends Undefined
this.menuItems = menuService.getMenuItems('HardCodedString'); //This works
}
}
这是我的服务
@Injectable()
export class MenuService {
getMenuItems(type) {
console.log(type)
switch(type){
case 'Thing':
return [];
break;
case 'Otherthing':
return [];
break;
default:
return [];
}
}
}
如何确保@Input 被发送到服务?
【问题讨论】:
-
你用的是哪个版本的Angular2?
标签: angular typescript