これを尋ねる他の質問は見られず、適切なリソースが見つかりません。うまくいけば、誰かが私を正しい方向に向けることができます-
var archiveParent = function () {
var msg = 'Archive parent "' + parent().name() + '" ?';
var title = 'Confirm Archive';
isArchiving(true);
return app.showMessage(msg, title, ['Yes', 'No'])
.then(confirmArchive);
function confirmArchive(selectedOption) {
if (selectedOption === 'Yes') {
parent().archived() === true;
save().then(success).fail(failed).fin(finish);
function success() {
router.navigateTo('#/parents');
}
function failed(error) {
cancel();
var errorMsg = 'Error: ' + error.message;
logger.logError(
errorMsg, error, system.getModuleId(vm), true);
}
function finish() {
return selectedOption;
}
}
isArchiving(false);
}
};
var save = function () {
isSaving(true);
return datacontext.saveChanges().fin(complete);
function complete() {
isSaving(false);
}
};
ビュー モデルで Knockout オブザーバブルのプロパティを変更していますが、データ コンテキストの EntityManager で KO が hasChanges() プロパティを起動していないように見えるため、Breeze は保存する変更を「認識」していません。私はばかげたことを見落としていると確信しています。何かアイデアはありますか?