Araf Harun
Araf Harun

Reputation: 11

Detecting a prop value change

I am very new to react. I am currently creating a game and trying to detect if the current turn has changed. I am wondering if there is a simple way to do this.

let hasTurnChanged = props.turn % 2 == 1;

  function chooseBestPrice() {
    // start by seeing if prices fluctuate every turn
      let currBestPrice = props.price;
      console.log(hasTurnChanged);
      if(hasTurnChanged){
        currBestPrice = fluctuatePrice(props.price);
      }
      return currBestPrice;
  }

When I click a button called Turn the prices are suppose to change.

Upvotes: 0

Views: 1062

Answers (1)

YellowD
YellowD

Reputation: 271

Assuming you're trying to detect a prop come from parent component, useEffect could help with this.

All we need to do is put the prop into the dependencies array of useEffect.

const ChildComponent = (props) => {
  useEffect(() => {
    // call the function here
  }, [props.price])

  // ...other code
}

See the official document for more information.

Upvotes: 2

Related Questions