UNPKG

can

Version:

MIT-licensed, client-side, JavaScript framework that makes building rich web applications easy.

45 lines (38 loc) 1.18 kB
<style> label { display: block; } </style> <checkbox-inlist></checkbox-inlist> <script src="../../node_modules/steal/steal.js" dev-bundle main="@empty" id="demo-source"> import { ObservableArray, stacheConverters, StacheElement, type } from "can"; class CheckboxInlist extends StacheElement { static view = ` {{# for(number of this.availableNumbers }} <label> <input type="checkbox" checked:bind="boolean-to-inList(number, this.selectedNumbers)"> checked:bind="boolean-to-inList({{ number }}, numbers)" </label> {{/ for }} <p> selected numbers: {{# for(number of this.selectedNumbers) }}{{ number }} {{/ for }} </p> `; static props = { availableNumbers: { type: type.maybeConvert(ObservableArray), get default() { return [ "one", "two", "three" ]; } }, selectedNumbers: { type: type.maybeConvert(ObservableArray), get default() { return []; } } }; }; customElements.define("checkbox-inlist", CheckboxInlist); </script>