В чем разница между ngModel. $ ModelValue и ngModel. $ ViewValue

У меня есть следующая директива ckEditor. Внизу есть два варианта, которые я видел из примеров того, как установить данные в редакторе:

app.directive('ckEditor', [function () {
    return {
        require: '?ngModel',
        link: function ($scope, elm, attr, ngModel) {

            var ck = null;
            var config = attr.editorSize;
            if (config == 'wide') {
                ck = CKEDITOR.replace(elm[0], { customConfig: 'config-wide.js' });
            } else {
                ck = CKEDITOR.replace(elm[0], { customConfig: 'config-narrow.js' });
            }


            function updateModel() {
                $scope.$apply(function () {
                    ngModel.$setViewValue(ck.getData());
                });
            }

            $scope.$on('modalObjectSet', function (e, modalData) {
                // force a call to render
                ngModel.$render();
            });

            ck.on('change', updateModel);
            ck.on('mode', updateModel);
            ck.on('key', updateModel);
            ck.on('dataReady', updateModel);

            ck.on('instanceReady', function () {
                ngModel.$render();
            });

            ck.on('insertElement', function () {
                setTimeout(function () {
                    $scope.$apply(function () {
                        ngModel.$setViewValue(ck.getData());
                    });
                }, 1000);
            });

            ngModel.$render = function (value) {
                ck.setData(ngModel.$modelValue);
            };

            ngModel.$render = function (value) {
                ck.setData(ngModel.$viewValue);
            };
        }
    };
}])

Может кто-нибудь сказать мне, в чем разница между:

ck.setData(ngModel.$modelValue);
ck.setData(ngModel.$viewValue);

И что я должен использовать. Я посмотрел на угловую документацию и там написано:

$viewValue

Actual string value in the view.

$modelValue

The value in the model, that the control is bound to.

Понятия не имею, что имел в виду автор, когда писал это в документе :-(

Ответы на вопрос(3)

Ваш ответ на вопрос