You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hey, I'm looking at a use case that isn't covered currently. I've got a handful of different lazy fetches on a settings page, and a few of them are "dangerous" such that they require user confirmation. I was thinking it would be really nice to be able to do:
functionconfirmAndDeleteField(field){constyes=window.confirm(`Are you sure you want to delete the "${field.name}" field?`)if(!yes)returnnullreturn{url: `/api/fields/${field.id}`,method: `DELETE`,then: ()=> ...
}}
But right now "aborting" the lazy fetch before it starts by returning null throws an error.
I realize I could solve this by adding a separate function to the view itself, and handling the confirm there, and then calling into the props. function afterwards. But it feels like added complexity, when return null feels like an elegant solution.
While I think it is better probably handle this in the component, I can also see that returning an empty/null/undefined mapping should probably be a no-op instead of an error. Going to think on it a bit, but we could follow the same pattern as then that no-ops on undefined. Would that be an acceptable solution?
Hey, I'm looking at a use case that isn't covered currently. I've got a handful of different lazy fetches on a settings page, and a few of them are "dangerous" such that they require user confirmation. I was thinking it would be really nice to be able to do:
But right now "aborting" the lazy fetch before it starts by returning
null
throws an error.I realize I could solve this by adding a separate function to the view itself, and handling the confirm there, and then calling into the
props.
function afterwards. But it feels like added complexity, whenreturn null
feels like an elegant solution.What do you think @ryanbrainard?
The text was updated successfully, but these errors were encountered: