Skip to content

Commit edbc4da

Browse files
committed
Merge pull request johnpapa#205 from angelochiello/master
[it-IT] PRs johnpapa#202, 204
2 parents 76d2f4c + ad48548 commit edbc4da

File tree

1 file changed

+47
-2
lines changed

1 file changed

+47
-2
lines changed

i18n/it-IT.md

Lines changed: 47 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1255,7 +1255,9 @@ Nonostante questa guida spieghi i *cosa*, *come* e *perché*, trovo che sia di a
12551255
12561256
*Perché?*: Porre la logica di start-up in una posizione consistente nel controller la rende semplice da localizzare, più consistente da testare e aiuta a prevenire la diffusione di logica su tutto il controller.
12571257
1258-
Nota: Se hai necessità di annullare condizionalmente il route prima di iniziare ad usare il controller, usa piuttosto una risoluzione nella route.
1258+
*Perché?*: La funzione `activate` del controller rende il riuso della logica adatto in caso di un refresh del controller/view, tiene la logica assieme, porta l'utente alla view più rapidamente, rende le animazini più facili su `ng-view` o `ui-view`e da la sensazione all'utente di istantaneità.
1259+
1260+
Nota: Se hai necessità di annullare condizionalmente il route prima di iniziare ad usare il controller, usa piuttosto una [risoluzione nella route](#stile-y081).
12591261
12601262
```javascript
12611263
/* evitare */
@@ -1294,10 +1296,16 @@ Nonostante questa guida spieghi i *cosa*, *come* e *perché*, trovo che sia di a
12941296
### Promesse risolte nel route
12951297
###### [Stile [Y081](#stile-y081)]
12961298
1297-
- Quando un controller dipende dalla dal fatto che una promessa sia risolta risolvi queste dipendenze nel `$routeProvider` prima che la logica del controller sia eseguita. Se hai bisogno di annullare condizionalmente una route prima che il controller sia attivato, usa un resolver della route.
1299+
- Quando un controller dipende dal fatto che una promessa sia risolta prima che il controller sia attivato, risolvi queste dipendenze nel `$routeProvider` prima che la logica del controller sia eseguita. Se hai bisogno di annullare condizionalmente una route prima che il controller sia attivato, usa un resolver della route.
1300+
1301+
- Usa la risoluzione della route quando decidi di annullare la route prima ancora di iniziara la transizione alla view.
12981302
12991303
*Perché?*: Un controller può richiedere dei dati prima che si carichi. Quei dati potrebbero venire da una promessa di una factory su misura oppure [$http](https://docs.angularjs.org/api/ng/service/$http). Usando un [resolver della route](https://docs.angularjs.org/api/ngRoute/provider/$routeProvider) acconsenti che la promessa sia risolta prima che la logica del controller sia eseguita, così da poter prendere decisioni basandosi sui dati provenienti dalla promessa.
13001304
1305+
*Perché?*: Il codice è eseguito dopo la route e nella funzione di attivazione del controller. La view inizia il caricamento immediatamente. Il data binding è effettivo quando le promesse nella funzine di attivazione sono risolte. Una animazione di “attendere” può essere mostrata durante la transizione alla view (via ng-view o ui-view).
1306+
1307+
Nota: Il codice è eseguito prima il route per mezo di una promessa. Il rifiuto della promessa annulla la route. "resolve" fa attendere la view mentre viene risolta. Una animazione “attendere” può essere mostrata prima della risoluzione e durante tutta la transizione alla vista. Se desideri di arrivare alla view più in fretta e non hai bisogno di un punto di controllo per decidere se vuoi navigare alla view, considera piuttosto [Promesse di attivazione di un Controller](#stile-y080).
1308+
13011309
```javascript
13021310
/* evitare */
13031311
angular
@@ -1349,7 +1357,44 @@ Nonostante questa guida spieghi i *cosa*, *come* e *perché*, trovo che sia di a
13491357
vm.movies = moviesPrepService.movies;
13501358
}
13511359
```
1360+
1361+
Note: L'esempio sotto mostra il punto di risoluzione della route in una funzione con il nome per cui è più semplice da fare il debug e più semplice da gestire nella iniezione delle dependenze.
1362+
1363+
```javascript
1364+
/* meglio */
1365+
1366+
// route-config.js
1367+
angular
1368+
.module('app')
1369+
.config(config);
1370+
1371+
function config($routeProvider) {
1372+
$routeProvider
1373+
.when('/avengers', {
1374+
templateUrl: 'avengers.html',
1375+
controller: 'Avengers',
1376+
controllerAs: 'vm',
1377+
resolve: {
1378+
moviesPrepService: moviesPrepService
1379+
}
1380+
});
1381+
}
1382+
1383+
function moviePrepService(movieService) {
1384+
return movieService.getMovies();
1385+
}
1386+
1387+
// avengers.js
1388+
angular
1389+
.module('app')
1390+
.controller('Avengers', Avengers);
13521391

1392+
Avengers.$inject = ['moviesPrepService'];
1393+
function Avengers(moviesPrepService) {
1394+
var vm = this;
1395+
vm.movies = moviesPrepService.movies;
1396+
}
1397+
```
13531398
Nota: La dipendenza del codice di esempio da `movieService` non è a prova di minificazione in se stessa. Per i dettagli su come rendere questo codice a prova di minificazione, vedi la sezione sulla [dependency injection](#manual-annotating-for-dependency-injection) e sulla [minificazione e annotazione](#minification-and-annotation).
13541399
13551400
**[Torna all'inizio](#tavola-dei-contenuti)**

0 commit comments

Comments
 (0)