El class

Generic HTML / custom element constructor.

Provides convenient named event handler parameters (onClick, onInput, onChange, onSubmit, etc.) that merge automatically into the element's event registry.

Use El when emitting custom elements, web components, or HTML tags that do not have a specialized sugar subclass in Bloom.

BloomNode customWidget() => El(
  'my-custom-element',
  className: 'custom-widget',
  attrs: {'data-mode': 'preview'},
  onClick: (e) => print('Clicked custom element'),
  children: [
    P(text: 'Inner text'),
  ],
);
Inheritance

Constructors

El(String tag, {String? text, String? className, String? style, Map<String, String>? attrs, Map<String, BloomEventHandler>? on, List<BloomNode> children = const [], BloomEventHandler? onClick, BloomEventHandler? onDblClick, BloomEventHandler? onInput, BloomEventHandler? onChange, BloomEventHandler? onSubmit, BloomEventHandler? onKeyDown, BloomEventHandler? onKeyUp, BloomEventHandler? onKeyPress, BloomEventHandler? onFocus, BloomEventHandler? onBlur, BloomEventHandler? onMouseEnter, BloomEventHandler? onMouseLeave, BloomEventHandler? onMouseDown, BloomEventHandler? onMouseUp, BloomEventHandler? onMouseMove, BloomEventHandler? onScroll, BloomEventHandler? onWheel, BloomEventHandler? onContextMenu, BloomEventHandler? onPointerDown, BloomEventHandler? onPointerUp, BloomEventHandler? onDrop, BloomEventHandler? onDragOver, BloomEventHandler? onDragStart, BloomEventHandler? onTouchStart, BloomEventHandler? onTouchEnd})
Creates an element with tag and optional styling, attributes, event handlers, and child descriptors.
El.raw(String tag, {String? text, String? className, String? style, Map<String, String>? attrs, Map<String, BloomEventHandler>? on, List<BloomNode> children = const []})
Const constructor for El when no event callback shorthand is needed.
const

Properties

attrs → Map<String, String>?
Arbitrary HTML attributes (id, href, placeholder, etc.).
finalinherited
children → List<BloomNode>
Child descriptors nested within this element.
finalinherited
className → String?
CSS class attribute applied to the element.
finalinherited
hashCode → int
The hash code for this object.
no setterinherited
on → Map<String, BloomEventHandler>?
Event handlers keyed by DOM event name (click, input, change...).
finalinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
style → String?
Inline style — raw CSS string (e.g. "color: red; display: flex;").
finalinherited
tag → String
Lowercase tag name, e.g. "div", "button", "custom-tag".
finalinherited
text → String?
Optional single text child sugar — equivalent to children: [Text(text)] when no explicit children are given.
finalinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited