graph LR
vue_src_platforms_web_runtime_modules_attrs["vue.src.platforms.web.runtime.modules.attrs"]
vue_src_platforms_web_runtime_modules_dom_props["vue.src.platforms.web.runtime.modules.dom-props"]
vue_src_platforms_web_runtime_modules_events["vue.src.platforms.web.runtime.modules.events"]
vue_src_platforms_web_runtime_modules_style["vue.src.platforms.web.runtime.modules.style"]
vue_src_platforms_web_runtime_modules_class["vue.src.platforms.web.runtime.modules.class"]
vue_src_platforms_web_runtime_modules_show["vue.src.platforms.web.runtime.modules.show"]
vue_src_platforms_web_runtime_directives_model["vue.src.platforms.web.runtime.directives.model"]
vue_src_platforms_web_runtime_modules_transition["vue.src.platforms.web.runtime.modules.transition"]
src_core_vdom_patch["src.core.vdom.patch"]
src_shared_util["src.shared.util"]
src_core_vdom_patch -- "invokes" --> vue_src_platforms_web_runtime_modules_attrs
src_core_vdom_patch -- "calls" --> vue_src_platforms_web_runtime_modules_dom_props
src_core_vdom_patch -- "integrates with" --> vue_src_platforms_web_runtime_modules_events
src_core_vdom_patch -- "invokes" --> vue_src_platforms_web_runtime_modules_style
src_core_vdom_patch -- "calls" --> vue_src_platforms_web_runtime_modules_class
vue_src_platforms_web_runtime_modules_show -- "coordinates with" --> vue_src_platforms_web_runtime_modules_transition
vue_src_platforms_web_runtime_directives_model -- "integrates with" --> vue_src_platforms_web_runtime_modules_dom_props
vue_src_platforms_web_runtime_modules_transition -- "foundational logic for" --> vue_src_platforms_web_runtime_components_transition
vue_src_platforms_web_runtime_modules_transition -- "foundational logic for" --> vue_src_platforms_web_runtime_components_transition_group
vue_src_platforms_web_runtime_modules_attrs -- "utilizes" --> src_shared_util
vue_src_platforms_web_runtime_modules_dom_props -- "uses" --> src_shared_util
The Vue.js rendering subsystem orchestrates the efficient update of the actual DOM based on changes in the Virtual DOM. At its core, src.core.vdom.patch acts as the central reconciliation engine, comparing old and new Virtual Nodes (VNodes) and applying necessary changes. This process involves specialized modules like vue.src.platforms.web.runtime.modules.attrs, vue.src.platforms.web.runtime.modules.dom-props, vue.src.platforms.web.runtime.modules.events, vue.src.platforms.web.runtime.modules.style, and vue.src.platforms.web.runtime.modules.class, each responsible for specific aspects of DOM manipulation. Directives such as vue.src.platforms.web.runtime.directives.model and vue.src.platforms.web.runtime.modules.show extend this functionality, providing two-way data binding and conditional rendering, often integrating with the vue.src.platforms.web.runtime.modules.transition module for animated effects. Utility functions from src.shared.util support various operations across these components.
Manages the setting and updating of HTML attributes on actual DOM elements. It ensures that attributes in the Virtual DOM are correctly reflected in the browser's DOM.
Related Classes/Methods:
Handles the updating of DOM properties (e.g., value, checked, selected) on elements. These properties often behave differently from HTML attributes and require specific handling.
Related Classes/Methods:
Responsible for attaching, detaching, and updating native DOM event listeners on elements, enabling user interaction and reactivity.
Related Classes/Methods:
Applies and updates inline CSS styles on DOM elements based on the style data provided by the Virtual DOM.
Related Classes/Methods:
Manages the addition and removal of CSS classes on DOM elements, supporting dynamic styling based on component state.
Related Classes/Methods:
Implements the v-show directive, which controls element visibility by toggling the display CSS property. It can coordinate with transitions for smooth visual effects.
Related Classes/Methods:
Provides the core client-side logic for the v-model two-way data binding directive, primarily for form inputs (<input>, <textarea>, <select>), synchronizing input values with component data.
Related Classes/Methods:
Contains the fundamental logic for handling CSS transitions (e.g., enter, leave hooks) by applying and removing CSS classes at appropriate times during element insertion or removal.
Related Classes/Methods:
Vue's Virtual DOM Manager, orchestrates the Virtual DOM reconciliation process by comparing VNodes and applying changes to the real DOM.
Related Classes/Methods:
Utility functions used across various modules, providing common helpers for type checking, object manipulation, and string transformations.
Related Classes/Methods: