default on_submit in form set to prevent_default (#4005)
* default submit forms set to prevent_default * fix tests
This commit is contained in:
parent
25016f5e27
commit
130bcf96ca
@ -10,7 +10,7 @@ from jinja2 import Environment
|
||||
from reflex.components.el.element import Element
|
||||
from reflex.components.tags.tag import Tag
|
||||
from reflex.constants import Dirs, EventTriggers
|
||||
from reflex.event import EventChain, EventHandler
|
||||
from reflex.event import EventChain, EventHandler, prevent_default
|
||||
from reflex.utils.imports import ImportDict
|
||||
from reflex.vars import VarData
|
||||
from reflex.vars.base import LiteralVar, Var
|
||||
@ -148,6 +148,9 @@ class Form(BaseHTML):
|
||||
Returns:
|
||||
The form component.
|
||||
"""
|
||||
if "on_submit" not in props:
|
||||
props["on_submit"] = prevent_default
|
||||
|
||||
if "handle_submit_unique_name" in props:
|
||||
return super().create(*children, **props)
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
from reflex.components.radix.primitives.form import Form
|
||||
from reflex.event import EventChain
|
||||
from reflex.event import EventChain, prevent_default
|
||||
from reflex.vars.base import Var
|
||||
|
||||
|
||||
@ -15,7 +15,6 @@ def test_render_on_submit():
|
||||
|
||||
|
||||
def test_render_no_on_submit():
|
||||
"""A form without on_submit should not render a submit handler."""
|
||||
"""A form without on_submit should render a prevent_default handler."""
|
||||
f = Form.create()
|
||||
for prop in f.render()["props"]:
|
||||
assert "onSubmit" not in prop
|
||||
assert f.event_triggers["on_submit"] == prevent_default
|
||||
|
Loading…
Reference in New Issue
Block a user