¿La máquina js tiene un DOM virtual?
JS tiene de forma nativa un DOM virtual. El código para construir un árbol DOM virtual de js es el siguiente:
//Construir una función de clase de objeto DOM virtual Elemento (nombre de etiqueta, accesorios, hijos). ){ this.tagName =tagName;
this.this.tagName = tagName;
this.props = props.
this.children = niños;} // Crear función DOM virtual createElement(tagName, props, Children) {
return new Element(tagName, props, Children)}/ ?
// Suponiendo que tenemos una estructura DOM como se muestra arriba, podemos usar DOM virtual para simular una estructura de árbol DOM similar.
let VDOM = createElement("ul", {clase: "ul-wrap",}, [createElement("li", {clase: "li-item"
} , ["1"]) ,?createElement("li", {clase: "li-item"}, ["2"]).
createElement("li", {?class: " li-item"}, ["3"]),]); console.dir(JSON.stringify(VDOM,null,2)).
Podemos imprimir el DOM virtual impreso como la siguiente estructura en el mando.
Los pasos para usar el algoritmo DOM virtual son:
1. Use la estructura de objetos JavaScript nativo para simular la estructura del árbol DOM, use este árbol para construir un árbol DOM real y renderizarlo. en la página.
2. Cuando el estado cambie, reconstruya un nuevo árbol DOM virtual y luego use el árbol nuevo y el árbol antiguo para comparar, registrar y guardar las diferencias entre los dos árboles.
3. Cuando las diferencias registradas en el paso 2 se apliquen al árbol DOM real creado en el paso 1, la vista se actualizará.