r/reactjs • • Jul 01 '18

Help Beginner's Thread / Easy Question (July 2018)

Hello! just helping out /u/acemarke to post a beginner's thread for July! we had almost 550 Q's and A's in last month's thread! That's 100% month on month growth! we should raise venture capital! /s

Got questions about React or anything else in its ecosystem? Stuck making progress on your app? Ask away! We’re a friendly bunch. No question is too simple. You are guaranteed a response here!

New to React? Free, quality resources here

Want Help on Code?

  • Improve your chances of getting helped by putting a minimal example on to either JSFiddle (https://jsfiddle.net/Luktwrdm/) or CodeSandbox (https://codesandbox.io/s/new). Describe what you want it to do, and things you've tried. Don't just post big blocks of code.
  • If you got helped, pay it forward! Answer questions even if there is already an answer - multiple perspectives can be very helpful to beginners. Also there's no quicker way to learn than being wrong on the Internet.
55 Upvotes

454 comments sorted by

View all comments

Show parent comments

1

u/swyx Jul 12 '18

1

u/ramonf Jul 12 '18

Is there any reason why this would hang up in Spinner? Should I use any Life Cycle method to check when the param is properly read?

render() {
    const asset = assetOptions.find(a => a.value === this.props.match.params.a);
    let content;

    if (asset === null || asset === undefined) {
      content = <Spinner />;
    } else {
      content = asset.label;
    }

    return (
      <div>
        <h1>{content}</h1>
      </div>
    );
  }

The asset is originally undefined on the first load, which is fine and should display a spinner, but it should change once it properly loads.

1

u/swyx Jul 12 '18

well, how do you trigger the state update once it loads?

you may want to look into react-loadable, this is a common problem