nakarte

Source code of https://map.sikmir.ru (fork)
git clone git://git.sikmir.ru/nakarte
Log | Files | Refs | LICENSE

commit 19a37ef0a182db03fa86d6def174f661ae097964
parent a8bc0de13d0c166948c37a299d8c3d6ff9589de2
Author: Tarwirdur Turon <tarwirdur@ya.ru>
Date:   Sat, 17 Nov 2018 18:39:49 +0300

leaflet.control.layers.configure/index.js: js template -> knockout template

Diffstat:
Msrc/lib/leaflet.control.layers.configure/index.js | 13++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/src/lib/leaflet.control.layers.configure/index.js b/src/lib/leaflet.control.layers.configure/index.js @@ -265,6 +265,7 @@ function enableConfig(control, {layers, customLayersOrder}) { maxZoom: ko.observable(fieldValues.maxZoom), isOverlay: ko.observable(fieldValues.isOverlay), isTop: ko.observable(fieldValues.isTop), + buttons: buttons, buttonClicked: function buttonClicked(callbackN) { const fieldValues = { name: dialogModel.name().trim(), @@ -279,7 +280,7 @@ function enableConfig(control, {layers, customLayersOrder}) { } }; - const formHtml = [` + const formHtml = ` <p><a href="http://leafletjs.com/reference-1.0.2.html#tilelayer" target="_blank">See Leaflet TileLayer documentation for url format</a></p> <label>Layer name<br/><input data-bind="value: name"/></label><br/> <label>Tile url template<br/><textarea data-bind="value: url" style="width: 100%"></textarea></label><br/> @@ -296,12 +297,10 @@ function enableConfig(control, {layers, customLayersOrder}) { <label>Max zoom<br> <select data-bind="options: [9,10,11,12,13,14,15,16,17,18], value: maxZoom"></select></label> -<br />`]; - for (let [i, button] of buttons.entries()) { - formHtml.push(`<a class="button" data-bind="click: buttonClicked.bind(null, ${i})">${button.caption}</a>`); - } - - form.innerHTML = formHtml.join(''); +<div data-bind="foreach: buttons"> + <a class="button" data-bind="click: $root.buttonClicked.bind(null, $index()), text: caption"></a> +</div>`; + form.innerHTML = formHtml; ko.applyBindings(dialogModel, form); },