我是Angular 5的新手,我有一个问题,我希望有人可以提供帮助。
我有一个Parent
组件和一个Child
组件。 Parent
将Action
个对象传递到Child
组件。
:
<child [action]="someAction"></child>
Action
类有一个方法doSomething(arg: string)
,它应返回Child
可以订阅的Observable。我希望Child
组件能够执行以下操作:
action.doSomething("some arg passed in by the child").subscribe(//the usual next, error, and complete callbacks)
基本上我想要的是angular / common / http http.get(url)
的作用。它接受一个参数并返回一个可观察的。这正是我想要做的。
doSomething(arg)
方法可以执行类似于http.post(..)
调用的操作。但我不想让孩子直接拨打http.post(..)
电话,如果我可以避免的话。我希望子组件可以重用,因为它只调用doSomething(..)
,而父组件定义doSomething(..)
应该实际执行的操作。
孩子不对doSomething(..)
返回的内容感兴趣。它只是想知道doSomething(..)
调用是成功还是失败。
方法doSomething(..)
看起来如何? 如何创建要返回的Observable?我们将非常感谢实际的代码示例。
我不能只是将父母的回调传递给孩子,因为孩子需要知道呼叫是成功还是失败。
非常感谢你!