Бих се опитал да бъда възможно най-кратък. Използвам DurandalJs, HotTowel SPA шаблон. Добавих следния модел на изглед
define(['services/logger'], function (logger) {
title = 'Content';
unpublishedContent = ko.observable('default');
activate = function() {
logger.log(title + ' View Activated', null, title, true);
return true;
}
unpublishedContent.subscribe(function (newValue) {
logger.log('New value is: ' + newValue);
});
return {
activate: activate,
title: title,
unpublishedContent: unpublishedContent,
save: function (data) {
self = this;
logger.log(' Content saved - ' + self.unpublishedContent(), null, title, true);
}
};
});
И следния изглед
<section>
<div class="row">
<div class="col-md-4">Left section</div>
<div class="col-md-8">
<form class="form-horizontal" role="form" data-bind="submit: save">
<div class="form-group">
<label for="html" class="col-lg-3">Html</label>
<div class="col-lg-9">
<textarea class="form-control" data-bind="text: unpublishedContent"></textarea>
</div>
</div>
<div class="form-group">
<label class="col-lg-3">Your HTML</label>
<label class="col-lg-9" data-bind="text: unpublishedContent"></label>
</div>
<div class="form-group">
<div class="col-lg-offset-3 col-lg-9">
<button type="submit" class="btn btn-default">Save</button>
</div>
</div>
</form>
</div>
</div>
</section>
Тук трябва да отбележим няколко точки
unpublishedContent
собственост ako.observable
unpublishedContent
е обвързан с текстово поле и етикетsave
методът е обвързан с формата с помощта наsubmit
обвързване
Въпреки че моето свързване за изпращане работи, свързването на unpublishedContent
не работи. Може да правя проста грешка някъде, но не мога да забележа, вероятно имам нужда от втори чифт очи, които да я гледат.
Активирах отстраняването на грешки в durandal, но не получавам много от регистрирането на durandal, първо, то не показва нищо, свързано с ko, и второ, мисля, че съм твърде нов в durandal, за да разбера неговите съобщения за отстраняване на грешки.