public class UserNameComponent extends ReactComponent { private String userName; public UserNameComponent(String userName) { this.userName = userName; } public void render() { // ... } } public class UserInfoPanel extends ReactComponent { private String userName; private String avatarUrl; public UserInfoPanel(String userName, String avatarUrl) { this.userName = userName; this.avatarUrl = avatarUrl; } public void render() { return ( <div> <UserAvatarComponent avatarUrl={this.avatarUrl} /> <UserNameComponent userName={this.userName} /> </div> ); } } public class ParentComponent extends ReactComponent { private boolean isChecked; public ParentComponent() { this.isChecked = false; } public void handleChange() { this.isChecked = !this.isChecked; } public void render() { return ( <ChildComponent isChecked={this.isChecked} onCheckboxChange={this.handleChange} /> ); } } public class ChildComponent extends ReactComponent { private boolean isChecked; private Runnable onCheckboxChange; public ChildComponent(boolean isChecked, Runnable onCheckboxChange) { this.isChecked = isChecked; this.onCheckboxChange = onCheckboxChange; } public void render() { return ( <input type="checkbox" checked={this.isChecked} onChange={this.onCheckboxChange} /> ); } } public class ParentComponent extends ReactComponent { private String message; public void handleMessageChange(String message) { this.message = message; } public void render() { return ( <ChildComponent message={this.message} onMessageChange={this.handleMessageChange} /> ); } } public class ChildComponent extends ReactComponent { private String message; private Consumer<String> onMessageChange; public ChildComponent(String message, Consumer<String> onMessageChange) { this.message = message; this.onMessageChange = onMessageChange; } public void handleChange(event) { this.onMessageChange(event.target.value); } public void render() { return ( <input type="text" value={this.message} onChange={this.handleChange} /> ); } }


上一篇:
下一篇:
切换中文