uber / react-view

React View is an interactive playground, documentation and code generator for your components.
https://react-view.pages.dev
MIT License
697 stars 41 forks source link

Would you consider supporting multiple statements? #61

Open BiosSun opened 3 years ago

BiosSun commented 3 years ago

I want use JSS in my project demos, It's used as follows:

import React from 'react'
import {createUseStyles} from 'react-jss'

const useStyles = createUseStyles({
  box: {
    color: 'red'
  }
})

export default function Box({ children }) {
  const classes = useStyles()
  return <div className={classes.box}>Hello</div>
}

But currently React View does not support writing multiple statements.

First, we add a return before the first statement, and we will delete export default, and modify the variable declaration statement, leaving only the initial value part.

This will make the above demo code error.

I wonder if it is possible to simply replace the export default statement with a return statement. If there is no export default statement in the code, then convert the last statement to a return statement.

If you think this is feasible, then I can implement it and submit a pull request.

tajo commented 3 years ago

You can probably just move useStyles into Box fn. It's not very pretty but should work?

BiosSun commented 3 years ago

Yes, it works. but I don't want to write this kind of code in the demo, it is not good.

In addition, in my ideas, the problem of spread attribute can also be solved.