Ciao qual è il migliore? Qual è la differenza? Quali sono i pro e i contro?richiedono: ngModel vs scope: {ngModel: '='} su AngularJS Directives
ecco il codice confronto tra i due:
portata: {ngModel: '='}
<!DOCTYPE html>
<html>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<body>
<div ng-app="app">
<input ng-model="code"></my-directive>
</div>
<script type="text/javascript">
app = angular.module('app', []);
app.directive('input', function(){
return {
scope: {
ngModel: '='
},
link: function(scope, element, attrs){
scope.$watch('ngModel', function(value){
console.log(value);
})
}
}
});
</script>
</body>
</html>
richiedono: 'ngModel',
<!DOCTYPE html>
<html>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<body>
<div ng-app="app">
<input ng-model="code"></my-directive>
</div>
<script type="text/javascript">
app = angular.module('app', []);
app.directive('input', function(){
return {
require: 'ngModel',
link: function(scope, element, attrs, ngModel){
attrs.$observe('ngModel', function(value){
scope.$watch(value, function(newValue){
console.log(newValue);
});
});
}
}
});
</script>
</body>
</html>
PS Si prega di essere consapevoli del fatto che entrambi i codici fa lo stesso. registri sulla console con il valore del modello
Le opinioni non sono di competenza di SO. – Rob
"che è meglio" -> cosa stai cercando di fare? Differenza: 'require' ti dà l'enire' NgModelController' (quindi puoi ad esempio collegarti alle condutture di conversione e convalida di Angular), 'scope =' ti dà un legame con la stessa espressione usata da 'ng-model' (e il suo sottostante 'NgModelController'). –
Quali sono i pro e i contro? –