Двустранното свързване в AngularJs е страхотноактуализиране на изгледа по всяко време, когато моделът се промени. Чудех се дали има някакъв начин да предадете модела на функция, определена в контролера, преди да бъде показана. И не с натискане на бутон, а на живо.
Така например p
елемент ще бъде актуализиран автоматично
<input data-ng-model="myModel">
<p>{{myModel}}</p>
Има ли начин да направите следното?
<div data-ng-controller="myController">
<input data-ng-model="myModel">
<p>{{increment(myModel)}}</p>
</div>
където increment е функция, дефинирана в myController
Отговори:
2 за отговор № 1Най-категорично можете. Просто дефинирайте функцията в същия контролер. Например
контролер:
app.controller("myCtrl", function($scope) {
$scope.increment = function() {
return $scope.myModel;
}
});
HTML
<div data-ng-controller="myController">
<input data-ng-model="myModel">
<p>{{increment()}}</p>
</div>
Това връща точно същото нещо като {{myModel}}