GithubHelp home page GithubHelp logo

Comments (4)

texttechne avatar texttechne commented on May 31, 2024 2

Actually there are a couple of projects which realize the conditional part as React component. But they are all confronted with the following problem:

<If condition={obj}>
    <div>{obj.name}<div>
</If>

The code inside the <If> statement would get evaluated nonetheless, even if obj is false or undefined. Hence the compilation step, which is the only elegant way to solve this.

Read also Why Transform. This reason should probably be made more prominent, like putting it into the intro section. So let's keep this issue open until it is better documented.

from jsx-control-statements.

trusktr avatar trusktr commented on May 31, 2024

A compile-step advantage I see is being able to convert each="item" into a variable reference, not possible with runtime.

from jsx-control-statements.

texttechne avatar texttechne commented on May 31, 2024

Pros

  • Conditionals are not flawed
  • For statements with variable reference are made possible
  • There's no penalty on the runtime performance
  • It works exactly as JSX is supposed to work: Plain syntactic sugar

Cons

  • Requires Babel (6)
  • Penalty on build time performance

from jsx-control-statements.

texttechne avatar texttechne commented on May 31, 2024

Closing in favor of #39

from jsx-control-statements.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.