1
を反応させて、私は1つの事について興味?は</p> <p>、私はこのようなアプリを持っている、と反応する通知システムを使用する通知システム
つまり、TestComponentで何かが起きたとき、App.jsの親コンポーネントを呼び出す方法は?
App.jsが君場合は、ルーティングシステム
xyz.com/test
<Route path='/test' component={TestComponent} />
App.js
export class App extends Component {
(...)
<Navbar/>
<Footer />
<TestComponent/>
<ToastNotif
ref="ToastNotifRef"
toastNotifStatus={this.state.toastNotifStatus}/>
(...)
ToastNotif.js
class ToastNotif extends Component {
constructor(props){
super(props);
this.state = {
toastNotifStatus: this.props.toastNotifStatus
}
}
componentDidMount(){
this.notificationSystem = this.refs.notificationSystem;
}
componentWillReceiveProps(newProps) {
const {notificationList} = newProps;
console.log('componentWillReceiveProps', newProps);
const {removeNotification} = this.props;
if(newProps.toastNotifStatus==='deleted'){
this.notificationSystem.addNotification({
title: "xxx!",
message: 'xxx'
level: 'success',
autoDismiss: 0,
position: 'bl'
});
}
}
render() {
console.log('toastnotifstatus (render)',this.state.toastNotifStatus)
return (
<div className="notification-component-wrapper">
<NotificationSystem ref="notificationSystem"/>
</div>
)
}
}
export default ToastNotif;