Mam element wejściowy, który jest związany z nokautem obserwowalnym:Knockout.JS: wyzwalacze w oparciu o zmiany obserwowanej
<input type="text" data-bind="value: myText, valueUpdate: 'keyup'" />
ten aktualizuje zaobserwować na każdym keyup. Chcę teraz aktywować dodatkowe zdarzenia, gdy wartość się zmieni.
Poniższa robi to w zasadzie:
this.myTextTrigger = ko.computed(function() {
console.log(this.myText());
}, this);
Jednak wydaje się nieco niezgrabne. Wyzwala również przy początkowym utworzeniu szablonu, w którym chcę obsługiwać zmiany po tym. Czy istnieje oficjalny/łatwiejszy sposób wyzwalania zdarzeń na podstawie zmian obserwowanych obiektów?
+1 dla subskrypcji ręcznych (http://knockoutjs.com/documentation/observables.html#explicitly_subscribing_to_observables) –
Niestandardowe powiązanie wydaje się przesadą dla pojedynczego wejścia IMHO. Subskrypcja brzmi jak lepszy wybór dla mnie. –
Właśnie tego szukałem. Dzięki! - Odnośnie niestandardowych powiązań: czy istnieje sposób na uogólnione wiązanie dla pól, w których zmiany mają wywoływać inne zdarzenia, i przekazanie tej funkcji do wykonania z poziomu powiązania w kodzie HTML? – gzost