Angular 2 - 我需要一个组件来输出一个函数,以便嵌套组件可以调用它。
我正在使用打字稿和角度2。
这是输出代码:
,
我需要从嵌套的对话框组件中调用“jobCancelledNotification”。
对于我的嵌套对话框组件,我有一个输出:
@Component({
selector: 'jobs',
providers: [Job, JobService, Notification, NotificationService, Counties, Towns],
templateUrl: './app/components/job/jobs.html',
directives: [CORE_DIRECTIVES, FORM_DIRECTIVES, NgIf, NgFor, DialogJob, BootFlatDatePicker],
pipes:[SearchFilter],
outputs: ['jobCancelledNotification']
})
jobCancelledNotification = (event) => {console.log("job cancelled via output!!!!"); }
然后我尝试用它来调用它:
@Output() jobCancelledNotification = new EventEmitter();
当对话框组件准备就绪时,需要调用jobCancelledNotification,它从父组件调用jobCancelledNotification。
答案 0 :(得分:1)
首先,您不需要包含已包含的NgIf,NgFor和CORE_DIRECTIVES。
在父组件中:
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = UIColor.greenColor()
bController = b()
cController = c()
bController.view.autoresizingMask = .None
cController.view.autoresizingMask = .None
displayContentController(bController, toFrame: CGRect(x: 0, y: 0, width: 100, height: 100))
displayContentController(cController, toFrame: CGRect(x: 0, y: 100, width: 100, height: 100))
}
在子组件中:
```<message (message)="call($event)"></message>```
export class App {
response: any;
call(message: any) {
this.response = message;
}
}