Getting started
The easiest way to try out FicusJS is using a hello world example.
Create an index.html
file and copy the following between the <body>
tags.
<hello-world></hello-world>
<script type="module">
import { html, renderer } from 'https://cdn.skypack.dev/@ficusjs/renderers@5/htm'
import { createCustomElement } from 'https://cdn.skypack.dev/ficusjs@6/custom-element'
createCustomElement('hello-world', {
renderer,
handleClick () {
window.alert('Hello to you!')
},
render () {
return html`
<div>
<p>FicusJS hello world</p>
<button type="button" onclick="${this.handleClick}">Click me</button>
</div>
`
}
})
</script>
Alternatively, fork this Codepen to see it in action - https://codepen.io/ducksoupdev/pen/GRZPqJO
The hello world example creates a new custom element using the createCustomElement
function and registers it to the hello-world
tag. It uses the htm JSX-like renderer (other renderers are available) for creating HTML from tagged template literals.
Once registered, the tag can be used multiple times in HTML and instances can be programmatically obtained using document.querySelector
or element.querySelector