J'essaie de résoudre une liste de clients avant de rendre une page.Utiliser la résolution avec le composant angularjs
Voici la référence du fournisseur d'état, où j'ai les méthodes de résolution.
angular.module('app')
.config(($stateProvider) => {
$stateProvider
.state('customers', {
url: '/customers',
template: '<customers></customers>',
resolve: {
test: function() {
return 'nihao';
},
},
});
});
Suivie par le composant, qui aurait dû appeler le #test de résolution. Tout ce qu'il devrait faire est d'imprimer le mot «nihao» sur la console.
(function myCustomersConfig() {
class MyCustomersComponent {
constructor(test) {
this.test = test;
console.log(this.test);
}
angular.module('app').component('myCustomers', {
templateUrl: 'app/customers/customers.html',
controller: MyCustomersComponent,
});
}());
Cependant, je continue à obtenir cette erreur:
angular.js:13708 Error: [$injector:unpr] Unknown provider: testProvider <- test
http://errors.angularjs.org/1.5.7/$injector/unpr?p0=testProvider%20%3C-%20test
at angular.js:68
at angular.js:4502
at Object.getService [as get] (angular.js:4655)
at angular.js:4507
at getService (angular.js:4655)
at injectionArgs (angular.js:4679)
at Object.invoke (angular.js:4701)
at $controllerInit (angular.js:10234)
at nodeLinkFn (angular.js:9147)
at angular.js:9553
Je peux voir qu'il exécute les fonctions de résolution, de sorte que les travaux, mais il ne sera pas injecter les méthodes! Des idées?
Il est semblable à celui que j'ai demandé le mois dernier - [Comment attendre la promesse de l'interface utilisateur du routeur Resolve dans angulaire 1.5 Composant ] (http://stackoverflow.com/questions/38079407/how-to-wait-for-promise-from-ui-router-resolve-in-angular-1-5-component) – Win
Donc, je l'ai essayé * exactement * comme l'exemple que vous avez fourni, pas de chance:/Je reçois toujours l'erreur: "TypeError Uncaught: Impossible de lire la propriété 'test' de undefined". Pourriez-vous expliquer ce que font les liaisons, en particulier avec le signe "<"? –
Au-dessus du code, j'ai oublié *** $ résoudre. ***. Pourriez-vous s'il vous plaît essayer à nouveau? Vous pouvez en lire plus sous [Composants comme modèles de route] (https://docs.angularjs.org/guide/component#components-as-route-templates) – Win