All Projects → riot → custom-elements

riot / custom-elements

Licence: MIT license
Simple API to create vanilla custom elements with riot

Programming Languages

javascript
184084 projects - #8 most used programming language

@riotjs/custom-elements

Riot.js custom elements logo

Simple API to create vanilla custom elements with riot

This module is highly experimental, and it's not meant to be used in production yet!

🚧🚧🚧

Build Status NPM version NPM downloads MIT License

Demos

Usage

import MyComponent from './my-component.riot'
import define from '@riotjs/custom-elements'

define('x-tag', MyComponent)

Notice that in order to update the component properties via attribute you will need to rely on the observedAttributes array

<my-component>
  <p>{props.message}</p>
  <script>
    export default {
      // the message property will be automatically updated anytime the DOM `message` attribute will change
      observedAttributes: ['message']
    }
  </script>
</my-component>

API

This module exports only a single factory function that is a wrapper around the native customElements.define. The define function accepts only 3 parameters:

  • tag name
  • tag api normally generated via riot compiler
  • custom options to pass to customElements.define like {extends: 'button'} for example
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].