using componentWillReceiveProps