knockout-contenteditable

Knockout contenteditable binding

Usage no npm install needed!

<script type="module">
  import knockoutContenteditable from 'https://cdn.skypack.dev/knockout-contenteditable';
</script>

README

knockout-contenteditable

Installation

npm install --save-dev knockout-contenteditable

Usage

<div data-bind="contenteditable: editable" contenteditable="true"></div>
ko.applyBindings({
    editable: {
        value: ko.observable(),

        // @param {String} elementValue
        // @param {String} eventType trigger event type
        encode(elementValue, eventType) {
            return elementValue.replace('<br>', '&lt;br&gt;');
        },


        // @param {String} modelValue
        decode(modelValue) {
            return elementValue.replace('&lt;br&gt;', '<br>');
        }
    }
});

License

MIT © BinRui.Guan