Czy istnieje sposób, aby procedura obsługi zdarzeń zdefiniowana w komponencie React była dostępna w tagu podobnym do HTML? Mam na myśli coś takiego:
<MyComp param1="abc" param2="def" onDoSomething={this.someMethod} />
Moim celem jest zdefiniowanie onDoSomething
, ale obecnie wiem tylko, jak tworzyć parametry takie jak param1
i param2
.
export interface MyCompProps {
param1: string;
param2: string;
}
export interface DoSomethingEvent {
someParam: string;
}
export class MyComp extends React.Component<MyCompProps, {}> {
private doSomethingDispatcher = new EventDispatcher<DoSomethingEvent>();
public onDoSomething(handler: Handler<DoSomethingEvent>) {
this.doSomethingDispatcher.register(handler);
}
private fireDoSomething(param: string) {
this.doSomethingDispatcher.fire({someParam: param});
}
}
Jak mogę udostępnić obsługę zdarzeń onDoSomething
za pośrednictwem TSX, podobnie do korzystania ze zdarzenia onClick
?
0
Socrates
22 listopad 2018, 22:44
1 odpowiedź
Najlepsza odpowiedź
Możesz napotkać problemy, ponieważ obecnie nie udostępniasz funkcji onDoSomething, ale zwrócony wynik:
<MyComp param1="abc" param2="def" onDoSomething={this.someMethod()} />
Powinien być
<MyComp param1="abc" param2="def" onDoSomething={this.someMethod} />
1
Cecil
23 listopad 2018, 00:53
Podobne pytania
Nowe pytania
reactjs
React to biblioteka JavaScript do tworzenia interfejsów użytkownika. Wykorzystuje deklaratywny paradygmat oparty na komponentach i ma być zarówno wydajny, jak i elastyczny.