DioxusLabs/dioxus · error

component dynamic node ({}) is not mounted

Error message

component dynamic node ({}) is not mounted

What it means

vnode_snapshot recursed into a DynamicNode::Component whose component scope is not currently mounted in the VirtualDom. The snapshot walker expected the component's subtree to be reachable; an unmounted component (suspended or dropped render) breaks that assumption.

Source

Thrown at packages/oracle/src/vdom_snapshot.rs:111

    match &*slot {
        DynamicNode::Text(text) => vec![SnapshotNode::Text(text.value.clone())],
        DynamicNode::Fragment(nodes) => {
            let mounted_children = owner.mounted_fragment_children(slot, vdom);
            assert_eq!(
                mounted_children.len(),
                nodes.len(),
                "fragment dynamic node is not mounted"
            );
            mounted_children
                .into_iter()
                .flat_map(|node| vnode_snapshot(vdom, node))
                .collect()
        }
        DynamicNode::Component(component) => {
            let scope = component
                .mounted_scope(slot, owner, vdom)
                .unwrap_or_else(|| {
                    panic!("component dynamic node ({}) is not mounted", component.name)
                });
            vnode_snapshot(vdom, scope.try_mounted_root_node().unwrap())
        }
    }
}

fn apply_dynamic_attr(
    attrs: &mut Vec<SnapshotAttr>,
    listeners: &mut Vec<String>,
    attr: &Attribute,
) {
    match &attr.value {
        AttributeValue::Listener(_) => {
            let name = attr
                .name
                .strip_prefix("on")
                .unwrap_or(attr.name)
                .to_string();

View on GitHub (pinned to 24f6a829df)

Solutions

  1. The component's dynamic node is not mounted. Render and mount the component before querying its dynamic nodes.
Defensive patterns

Strategy: type-guard

When it happens

Trigger: Thrown at packages/oracle/src/vdom_snapshot.rs:111 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of DioxusLabs/dioxus@24f6a829df (2026-08-23). Data as JSON: /api/errors/e33c43c9f30d4da8. Report an issue: GitHub.