JSPlaygrounds icon indicating copy to clipboard operation
JSPlaygrounds copied to clipboard

Render expression for every loop cycle

Open VincentDamour opened this issue 8 years ago • 2 comments

The problem

Hi, first of all, thanks for this awesome tool. I'm trying to render expression for each cycle of a loop, but only the last execution is rendered;

For this example, the output will be New post

const posts = [  { id: '1', text: 'Hello world!' },  { id: '2', text: 'New post' } ];

for (let post of posts) {
  <p>{post.text}</p>
}

Currently I need to use the map function to output each value, like this:

<p>
  { posts.map(post => <p key={post.id}>{post.text}</p>) }
</p>

Here an easier example, the output will be 10:

for (let i = 0; i <= 10; i++) {
  i
}

It would be great if the expression can be outputted for every loop cycle.

VincentDamour avatar Jul 07 '16 23:07 VincentDamour

Thank you, I think it is related:

let fn = setInterval(() => {
  console.log('not shown') // OK
  'not shown'
}, 1000)

'shown'

it seems that currently it isn't possible to show in the UI the output of a callback

grigio avatar Jul 08 '16 15:07 grigio

There's no reasonable way to print any values that are generated in an async manner.
The workaround would be to wrap it in a react component

StephenGrider avatar Jul 12 '16 20:07 StephenGrider