The output element provides an example of a built-in element that "outputs" its value. It's a bit of a strange feature, given that it displays the exact value passed in, but the "value-add" proposition the output element provides may be bit esoteric (a11
npm install be-value-addedhtml
...
`
There are other ways to set the value programmatically, if you wait for the dependencies to load, such as:
`JavaScript
time.beEnhanced.by.beValueAdded.value = new Date();
`
Note that other binding-related enhancements in the be-enhanced family of enhancements, such as be-observant or be-switched automatically attaches the enhancement when applicable, so it is quite possible to use this enhancement in a declarative way.
Where values are displayed (for the data and time tags above), the user will see the .toLocale... value. To customize the international settings, use https://github.com/bahrus/be-intl enhancement that enhances this enhancement.
This is the canonical name. In less formal settings, where there is little chance of collision with other libraries, you can reference 📶.js instead and use the much shorter syntax:
`html
...
`
The link above demonstrates how easy it is to define your own name.
This will display the date and number in locale string format, and the meta and link tags in a microdata compatible way.
This package contains a base class that helps implement such features in userland using custom enhancements. This package also provide end-user capabilities in its own right.
Note that this does not add or modify the value property onto the enhanced element (top level). It just provides a uniform interface for multiple enhancements, all of which need to:
1. Be able to be passed a value
2. Reflect that value in some way to an attribute and/or text content of the element.
3. Optionally be able to observe the attribute (or text content -- todo) for modifications from other sources, and sync that back up with the value.
Running locally
Any web server that can serve static files will do, but...
1. Install git.
2. Do a git clone or a git fork of repository https://github.com/bahrus/be-value-added
3. Install node.js
4. Open command window to folder where you cloned this repo.
5. > npm install
6. > npm run serve
7. Open http://localhost:3030/demo in a modern browser.
Using from ESM Module:
For just the enhancement without attribute support:
`JavaScript
import 'be-value-added/be-value-added.js';
`
For attribute/behivior support as well:
`JavaScript
import 'be-value-added/behivior.js';
`
Using from CDN:
`html
``