Hiện tại mình đang có nhu cầu override method _onPress của TextInput để expose sự kiện onPress của nó ra ngoài (Vốn là TextInput không có sự kiện onPress). Nên mình đã thử kế thừa TextInput thế này:
class ExTextInput extends TextInput
{
_onPress()
{
this.props.onPress && this.props.onPress(...arguments); // làm trước vài chuyện gì đó
super._onPress(...arguments); // gọi lại _onPress gốc, method gốc sẽ trigger sự kiện onFocus
}
}
Kết quả toàn là _onPress của TextInput chạy chứ không phải _onPress của mình chạy trước . Hình như component mà được tạo bằng React.createClass thì không kế thừa kiểu này được.
Mình search google thì toàn ra các bài viết khuyên bảo nên dùng Higher Order Component, Composite over Inheritance các kiểu. Nhưng mình cần handle chính xác sự kiện onPress trước sự kiện onFocus của TextInput (chạy sau là sai mục đích của mình) nên không dùng Composite được.
Mong mọi người giúp đỡ