Angular expression doesn't work with ng-disabled
<pre><code>&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.7/angular.js"&gt;&lt;/script&gt;

&lt;body ng-app="myApp"&gt;
&lt;div ng-controller="toDoCtrl"&gt;
   &lt;div&gt;
    &lt;hr&gt;
    &lt;form class="form" name="commentForm" ng-submit="vm.submitCommentForm()"&gt;

        &lt;div class="form-group"&gt;
            &lt;label for="fieldBody"&gt;Comment:&lt;/label&gt;
                        &lt;textarea name="body" id="fieldBody" class="form-control" rows="3"
                               ng-change="vm.changeCommentForm()"
                               ng-model="vm.commentForm.body"&gt;&lt;/textarea&gt;
        &lt;/div&gt;

        &lt;div class="form-group"&gt;
            &lt;button type="submit" class="btn btn-primary" ng-disabled="!vm.validCommentForm"&gt;Comment&lt;/button&gt;
        &lt;/div&gt;
    &lt;/form&gt;
    &lt;hr&gt;
&lt;/div&gt;
&lt;/div&gt;
</code></pre>

<p>Script</p>

<pre><code>    var app = angular.module('myApp', []);
    app.controller('toDoCtrl', function () {
    var vm = this;
    vm.validCommentForm = true;
    })
</code></pre>

<p>The "comment" button appears disabled when <code>vm.validCommentForm = true</code><br>
Meanwhile if I hardcode <code>ng-disabled=0</code>comment button appears working, as supposed. What did I get wrong?</p>