index.js
file// src/jobs/edit/index.js
const JobEditFlow = props => {
const { location: { state } } = props // from <Route>
return (
state.inputDetails ?
<EditDetails {...props} /> :
state.inviteWorkers ?
<InviteWorkers {...props} /> :
null
)
})
JobEditFlow.displayName = "JobEditFlow"
export default JobEditFlow
src/pages/{resource_name}/{view_name}.js
src/
directory.src/pages/{resource_name}/{view_name}.js
as the root page.
src/pages/{resource_name}/{view_name}/{component_name}.js
src/pages/{resource_name}/components/{component_name}.js
Review the function component you've written. The ideal function component has this form:
const IdealComponent = props => {
const { values, you, need, user } = props
const [state, setState] = useState(0)
const { data, isLoading, isError } = useAsync({ promiseFn: loadUser(user._id) })
const { items, loadNextPage, setOptions } = useCustomStateHook()
return (
// JSX
)
}
src/pages/{resource_name}/components/{component_name}.js