$ setPristine ठीक काम करता है जब $ गुंजाइश के साथ संदर्भित लेकिन
देखें में 'वाक्य रचना के रूप में नियंत्रक' के साथ काम करने के लिए प्रतीत नहीं होता:
<h2>With Controller as syntax</h2>
<div ng-controller="FirstCtrl as first">
<form name="form1" id="form" novalidate>
<input name="name" ng-model="first.data.name" placeholder="Name" required/>
<button class="button" ng-click="first.reset()">Reset</button>
</form>
<p>Pristine: {{form1.$pristine}}</p>
<p> <pre>Errors: {{form.$error | json}}</pre> </p>
</div>
<hr>
<h2>With $scope</h2>
<div ng-controller="SecondCtrl">
<form name="form1" id="form" novalidate>
<input name="name" ng-model="data.name" placeholder="Name" required/>
<button class="button" ng-click="reset()">Reset</button>
</form>
<p>Pristine: {{form1.$pristine}}</p>
<p> <pre>Errors: {{form.$error | json}}</pre> </p>
</div>
app.js में:
var app = angular.module('plunker', []);
app.controller('FirstCtrl', function() {
'use strict';
var vm = this;
vm.data = { "name": ""};
vm.reset = function() {
vm.data.name = "";
vm.form1.$setPristine();
}
});
app.controller('SecondCtrl', function($scope) {
'use strict';
$scope.data = { "name": ""};
$scope.reset = function() {
$scope.data.name = "";
$scope.form1.$setPristine();
}
});
यहाँ plunker है: http://plnkr.co/edit/VcgZx3?p=preview
अन्य विशेषताएँ जो अभी भी दायरे से बंधी हैं और नियंत्रक उदाहरण के लिए नहीं हैं? –
@shyamalparikh केवल विशेषता है कि आप टेम्पलेट में 'पहले' के लिए बाध्यकारी हैं या नियंत्रक में 'this' या vm में जोड़े गए हैं –