Local value persistence
The following example shows a two-way binding dropdown with an event to save its value on the localStorage.
Example
The value is updated on the localStorage on the dropdown changes its value.
Source code
<html>
<script src="https://lemonadejs.com/v4/lemonade.js"></script>
<div id='root'></div>
<script>
function Persistence() {
const self = this;
// Default value of the property which is bound to the value of the dropdown
self.language = localStorage.getItem('language');
// Do something when the self.language changes using the onchange lemonadeJS native tracker
self.onchange = function() {
// Persist language
localStorage.setItem('language', self.language);
}
return `<select :bind="self.language">
<option value="">Choose one</option>
<option value="en_GB">English</option>
<option value="pt_BR">Portuguese</option>
</select>`;
}
lemonade.render(Persistence, document.getElementById('root'));
</script>
</html>
import lemonade from 'lemonadejs';
export default function Persistence() {
const self = this;
// Default value of the property which is bound to the value of the dropdown
self.language = localStorage.getItem('language');
// Do something when the self.language changes using the onchange lemonadeJS native tracker
self.onchange = function() {
// Persist language
localStorage.setItem('language', self.language);
console.log(localStorage.getItem('language'))
}
return `<select :bind="self.language">
<option value="">Choose one</option>
<option value="en_GB">English</option>
<option value="pt_BR">Portuguese</option>
</select>`;
}