@hartings/la-example
v1.0.5
Published
Webcomponent la-example following open-wc recommendations
Downloads
2
Readme
<la-example>
This webcomponent follows the open-wc recommendation and is used to showcase the possiblities of web components.
Installation
yarn add "@hartings/la-example"
Usage
The default export provides the Web Component class and does not register the web component itself. This approach prevents side-effects and gives you direct access to the Web Component. To use the Web Component in your HTML, you need to register it yourself. The following code provides a simple example:
<script type="module">
import { LaExample } from '@hartings/la-example';
window.customElements.define('la-example', LaExample);
</script>
<la-example></la-example>
<la-example header="My Custom Header"></la-example>
<la-example counter="20"></la-example>
If you prefer to use the web component without defining it yourself, you can adjust the import as follows:
<script type="module">
import '@hartings/la-example/la-example.js';
</script>
<la-example></la-example>
<la-example header="My Custom Header"></la-example>
<la-example counter="20"></la-example>
API Properties
The la-example Web Component uses reactive properties for configuration.
- header: string -> Add your own header content to the Web Component, defaults to "World"
- counter: number -> Initial value for button click counter, defaults to 0
You can also insert custom HTML into the la-example Web Component. Since the Web Component uses slots, you can place your custom HTML inside the tags:
<la-example>
<img src="./example.jpg" alt="My example Image" />
</la-example>
Testing with Web Test Runner
To execute a single test run for the web component, use:
yarn test
To run the tests in interactive watch mode run:
yarn test:watch
Local Demo with web-dev-server
yarn start
To run a local development server that serves the basic demo located in demo/index.html
Troubleshooting
- tslib not found: please add this to your dev dependencies
yarn add tslib --dev
- counter is not understand as a number: In plain JS this should not happen, in frameworks like Vue, please use in this case a variable set to your number