You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
li("Convert HTML or MD snippet to ",VanJS()," code with our online ",Link("HTML/MD to ",VanJS()," Converter","/convert")),
117
117
li("Check out ",Link(VanUI(),"/vanui")," - A collection of grab 'n go reusable utility and UI components for ",VanJS()),
118
118
li("Want reactive list, global app state, server-driven UI, serialization and more? Check out ",Link(VanX(),"/x")," - The 1.2kB official ",VanJS()," extension"),
119
+
li("Debugging complex dependencies in your app? checkout ",Link(VanGraph(),"https://github.com/vanjs-org/van/tree/main/graph")),
119
120
li("Want server-side rendering? Check out ",Link(MiniVan(),"/minivan")," and ",Link("Hydration","/ssr")," (the entire vanjs.org site is built on top of ",MiniVan(),")"),
120
121
li("For questions, feedback or general discussions, visit our ",Link("Discussions","https://github.com/vanjs-org/van/discussions")," page"),
</code></pre><p><b>Demo:</b><spanid="demo-poly-binding"></span></p><p><ahref="https://jsfiddle.net/gh/get/library/pure/vanjs-org/vanjs-org.github.io/tree/master/jsfiddle/tutorial/poly-binding">Try on jsfiddle</a></p><h2class="w3-xxlarge w3-text-red" id="the-end"><aclass="self-link" href="#the-end">The End</a></h2><hrstyle="width:50px;border:5px solid red" class="w3-round"><p>🎉 Congratulations! You have completed the entire tutorial of <b>VanJS</b>. Now you can start your journey of building feature-rich applications!</p><p>To learn more, you can:</p><ul><li>check out a list of <ahref="/demo" class="w3-hover-opacity">sample applications</a> built with <b>VanJS</b>.</li><li>read the in-depth discussion of a few <ahref="/advanced" class="w3-hover-opacity">advanced topics</a>.</li><li>check out how to build a <ahref="/ssr" class="w3-hover-opacity">fullstack app</a> with SSR, CSR and hydration.</li></ul><h2class="w3-xxlarge w3-text-red" id="api-index"><aclass="self-link" href="#api-index">API Index</a></h2><hrstyle="width:50px;border:5px solid red" class="w3-round"><p>Below is the list of all top-level APIs in <b>VanJS</b>:</p><ul><li><codeclass="symbol"><ahref="#api-tags" class="w3-hover-opacity">van.tags</a></code></li><li><codeclass="symbol"><ahref="#api-add" class="w3-hover-opacity">van.add</a></code></li><li><codeclass="symbol"><ahref="#api-state" class="w3-hover-opacity">van.state</a></code></li><li><codeclass="symbol"><ahref="#api-derive" class="w3-hover-opacity">van.derive</a></code></li><li><codeclass="symbol"><ahref="ssr#api-hydrate" class="w3-hover-opacity">van.hydrate</a></code></li></ul></div>
334
+
</code></pre><p><b>Demo:</b><spanid="demo-poly-binding"></span></p><p><ahref="https://jsfiddle.net/gh/get/library/pure/vanjs-org/vanjs-org.github.io/tree/master/jsfiddle/tutorial/poly-binding">Try on jsfiddle</a></p><h2class="w3-xxlarge w3-text-red" id="the-end"><aclass="self-link" href="#the-end">The End</a></h2><hrstyle="width:50px;border:5px solid red" class="w3-round"><p>🎉 Congratulations! You have completed the entire tutorial of <b>VanJS</b>. Now you can start your journey of building feature-rich applications!</p><p>To learn more, you can:</p><ul><li>check out a list of <ahref="/demo" class="w3-hover-opacity">sample applications</a> built with <b>VanJS</b>.</li><li>read the in-depth discussion of a few <ahref="/advanced" class="w3-hover-opacity">advanced topics</a>.</li><li>check out how to build a <ahref="/ssr" class="w3-hover-opacity">fullstack app</a> with SSR, CSR and hydration.</li><li>check out <ahref="/x" class="w3-hover-opacity"><b>VanX</b></a> for more features: reactive list, global app state, server-driven UI, serialization, etc.</li><li>debug complex dependencies in your app via <ahref="https://github.com/vanjs-org/van/tree/main/graph" class="w3-hover-opacity"><b>VanGraph</b></a>.</li></ul><h2class="w3-xxlarge w3-text-red" id="api-index"><aclass="self-link" href="#api-index">API Index</a></h2><hrstyle="width:50px;border:5px solid red" class="w3-round"><p>Below is the list of all top-level APIs in <b>VanJS</b>:</p><ul><li><codeclass="symbol"><ahref="#api-tags" class="w3-hover-opacity">van.tags</a></code></li><li><codeclass="symbol"><ahref="#api-add" class="w3-hover-opacity">van.add</a></code></li><li><codeclass="symbol"><ahref="#api-state" class="w3-hover-opacity">van.state</a></code></li><li><codeclass="symbol"><ahref="#api-derive" class="w3-hover-opacity">van.derive</a></code></li><li><codeclass="symbol"><ahref="ssr#api-hydrate" class="w3-hover-opacity">van.hydrate</a></code></li></ul></div>
335
335
<asideid="toc"><ul><li><ahref="#dom" class="w3-hover-opacity">DOM Composition and Manipulation</a><ul><li><ahref="#your-first-vanjs-app-a-simple-hello-page" class="w3-hover-opacity">Your first VanJS app: a simple Hello page</a></li><li><ahref="#api-tags" class="w3-hover-opacity">API reference: van.tags</a></li><li><ahref="#svg-and-mathml-support" class="w3-hover-opacity">SVG and MathML Support</a></li><li><ahref="#api-tagsns" class="w3-hover-opacity">API reference van.tags (for elements with custom namespace URI)</a></li><li><ahref="#api-add" class="w3-hover-opacity">API reference: van.add</a></li><li><ahref="#dom-nodes-already-in-the-document-tree-can-t-be-used-as-children" class="w3-hover-opacity">DOM nodes already in the document tree can't be used as children</a></li><li><ahref="#fun-dom" class="w3-hover-opacity">Functional-style DOM tree building</a></li><li><ahref="#on-event-handlers" class="w3-hover-opacity">on... event handlers</a></li></ul></li><li><ahref="#state" class="w3-hover-opacity">State</a><ul><li><ahref="#api-state" class="w3-hover-opacity">API reference: van.state</a></li><li><ahref="#public-interface-of-state-objects" class="w3-hover-opacity">Public interface of State objects</a></li><li><ahref="#state-val-is-immutable" class="w3-hover-opacity">State.val is immutable</a></li><li><ahref="#derived-state" class="w3-hover-opacity">Derived state</a></li><li><ahref="#api-derive" class="w3-hover-opacity">API reference: van.derive</a></li><li><ahref="#side-effect" class="w3-hover-opacity">Side effect</a></li></ul></li><li><ahref="#state-binding" class="w3-hover-opacity">State Binding</a><ul><li><ahref="#state-typed-prop" class="w3-hover-opacity">State objects as properties</a></li><li><ahref="#state-typed-child" class="w3-hover-opacity">State objects as child nodes</a></li><li><ahref="#state-derived-prop" class="w3-hover-opacity">State-derived properties</a></li><li><ahref="#state-derived-event-handlers" class="w3-hover-opacity">State-derived on... event handlers</a></li><li><ahref="#state-derived-child" class="w3-hover-opacity">State-derived child nodes</a></li><li><ahref="#removing-a-dom-node" class="w3-hover-opacity">Removing a DOM node</a></li><li><ahref="#stateful-binding" class="w3-hover-opacity">Stateful binding</a></li><li><ahref="#polymorphic-binding" class="w3-hover-opacity">Polymorphic Binding</a></li></ul></li><li><ahref="#the-end" class="w3-hover-opacity">The End</a></li><li><ahref="#api-index" class="w3-hover-opacity">API Index</a></li></ul></aside>
</code></pre><p><b>Demo:</b><spanid="demo-poly-binding"></span></p><p><ahref="https://jsfiddle.net/gh/get/library/pure/vanjs-org/vanjs-org.github.io/tree/master/jsfiddle/tutorial/poly-binding">Try on jsfiddle</a></p><h2class="w3-xxlarge w3-text-red" id="the-end"><aclass="self-link" href="#the-end">The End</a></h2><hrstyle="width:50px;border:5px solid red" class="w3-round"><p>🎉 Congratulations! You have completed the entire tutorial of <b>VanJS</b>. Now you can start your journey of building feature-rich applications!</p><p>To learn more, you can:</p><ul><li>check out a list of <ahref="/demo" class="w3-hover-opacity">sample applications</a> built with <b>VanJS</b>.</li><li>read the in-depth discussion of a few <ahref="/advanced" class="w3-hover-opacity">advanced topics</a>.</li><li>check out how to build a <ahref="/ssr" class="w3-hover-opacity">fullstack app</a> with SSR, CSR and hydration.</li></ul><h2class="w3-xxlarge w3-text-red" id="api-index"><aclass="self-link" href="#api-index">API Index</a></h2><hrstyle="width:50px;border:5px solid red" class="w3-round"><p>Below is the list of all top-level APIs in <b>VanJS</b>:</p><ul><li><codeclass="symbol"><ahref="#api-tags" class="w3-hover-opacity">van.tags</a></code></li><li><codeclass="symbol"><ahref="#api-add" class="w3-hover-opacity">van.add</a></code></li><li><codeclass="symbol"><ahref="#api-state" class="w3-hover-opacity">van.state</a></code></li><li><codeclass="symbol"><ahref="#api-derive" class="w3-hover-opacity">van.derive</a></code></li><li><codeclass="symbol"><ahref="ssr#api-hydrate" class="w3-hover-opacity">van.hydrate</a></code></li></ul></div>
334
+
</code></pre><p><b>Demo:</b><spanid="demo-poly-binding"></span></p><p><ahref="https://jsfiddle.net/gh/get/library/pure/vanjs-org/vanjs-org.github.io/tree/master/jsfiddle/tutorial/poly-binding">Try on jsfiddle</a></p><h2class="w3-xxlarge w3-text-red" id="the-end"><aclass="self-link" href="#the-end">The End</a></h2><hrstyle="width:50px;border:5px solid red" class="w3-round"><p>🎉 Congratulations! You have completed the entire tutorial of <b>VanJS</b>. Now you can start your journey of building feature-rich applications!</p><p>To learn more, you can:</p><ul><li>check out a list of <ahref="/demo" class="w3-hover-opacity">sample applications</a> built with <b>VanJS</b>.</li><li>read the in-depth discussion of a few <ahref="/advanced" class="w3-hover-opacity">advanced topics</a>.</li><li>check out how to build a <ahref="/ssr" class="w3-hover-opacity">fullstack app</a> with SSR, CSR and hydration.</li><li>check out <ahref="/x" class="w3-hover-opacity"><b>VanX</b></a> for more features: reactive list, global app state, server-driven UI, serialization, etc.</li><li>debug complex dependencies in your app via <ahref="https://github.com/vanjs-org/van/tree/main/graph" class="w3-hover-opacity"><b>VanGraph</b></a>.</li></ul><h2class="w3-xxlarge w3-text-red" id="api-index"><aclass="self-link" href="#api-index">API Index</a></h2><hrstyle="width:50px;border:5px solid red" class="w3-round"><p>Below is the list of all top-level APIs in <b>VanJS</b>:</p><ul><li><codeclass="symbol"><ahref="#api-tags" class="w3-hover-opacity">van.tags</a></code></li><li><codeclass="symbol"><ahref="#api-add" class="w3-hover-opacity">van.add</a></code></li><li><codeclass="symbol"><ahref="#api-state" class="w3-hover-opacity">van.state</a></code></li><li><codeclass="symbol"><ahref="#api-derive" class="w3-hover-opacity">van.derive</a></code></li><li><codeclass="symbol"><ahref="ssr#api-hydrate" class="w3-hover-opacity">van.hydrate</a></code></li></ul></div>
335
335
<asideid="toc"><ul><li><ahref="#dom" class="w3-hover-opacity">DOM Composition and Manipulation</a><ul><li><ahref="#your-first-vanjs-app-a-simple-hello-page" class="w3-hover-opacity">Your first VanJS app: a simple Hello page</a></li><li><ahref="#api-tags" class="w3-hover-opacity">API reference: van.tags</a></li><li><ahref="#svg-and-mathml-support" class="w3-hover-opacity">SVG and MathML Support</a></li><li><ahref="#api-tagsns" class="w3-hover-opacity">API reference van.tags (for elements with custom namespace URI)</a></li><li><ahref="#api-add" class="w3-hover-opacity">API reference: van.add</a></li><li><ahref="#dom-nodes-already-in-the-document-tree-can-t-be-used-as-children" class="w3-hover-opacity">DOM nodes already in the document tree can't be used as children</a></li><li><ahref="#fun-dom" class="w3-hover-opacity">Functional-style DOM tree building</a></li><li><ahref="#on-event-handlers" class="w3-hover-opacity">on... event handlers</a></li></ul></li><li><ahref="#state" class="w3-hover-opacity">State</a><ul><li><ahref="#api-state" class="w3-hover-opacity">API reference: van.state</a></li><li><ahref="#public-interface-of-state-objects" class="w3-hover-opacity">Public interface of State objects</a></li><li><ahref="#state-val-is-immutable" class="w3-hover-opacity">State.val is immutable</a></li><li><ahref="#derived-state" class="w3-hover-opacity">Derived state</a></li><li><ahref="#api-derive" class="w3-hover-opacity">API reference: van.derive</a></li><li><ahref="#side-effect" class="w3-hover-opacity">Side effect</a></li></ul></li><li><ahref="#state-binding" class="w3-hover-opacity">State Binding</a><ul><li><ahref="#state-typed-prop" class="w3-hover-opacity">State objects as properties</a></li><li><ahref="#state-typed-child" class="w3-hover-opacity">State objects as child nodes</a></li><li><ahref="#state-derived-prop" class="w3-hover-opacity">State-derived properties</a></li><li><ahref="#state-derived-event-handlers" class="w3-hover-opacity">State-derived on... event handlers</a></li><li><ahref="#state-derived-child" class="w3-hover-opacity">State-derived child nodes</a></li><li><ahref="#removing-a-dom-node" class="w3-hover-opacity">Removing a DOM node</a></li><li><ahref="#stateful-binding" class="w3-hover-opacity">Stateful binding</a></li><li><ahref="#polymorphic-binding" class="w3-hover-opacity">Polymorphic Binding</a></li></ul></li><li><ahref="#the-end" class="w3-hover-opacity">The End</a></li><li><ahref="#api-index" class="w3-hover-opacity">API Index</a></li></ul></aside>
0 commit comments