Habituellement, lorsque je veux spécifier l'URL de l'entité, j'ai une URL spécifique pour celle-ci comme ServerurL / Heroes Strong>.
Mais maintenant, j'ai un cas où je veux utiliser une entité appartenant à une autre entité. Par exemple, disons que je veux utiliser des armes de héros. Mes URL HTTP pour les épées ressemblent à quelque chose comme: ServerurL / Heroes / Heroïde / Armes Strong>. Donc, disons que je dois ajouter une nouvelle épée, ma seule option consiste à l'ajouter à un héros spécifique, alors j'ai besoin de connaître des informations sur les hérosids et l'épée à faire quelque chose comme: http post Actuellement, lorsque j'ajoute simplement une URL de Heroes dans l'entitéhttpresourceurls dans DefaultDataserviceconfig. Vous pouvez voir le Exemple sur Stackblitz . Allez sur App-> Store-> Entity-> Entity-Store.Module.ts. C'est là que je spécifie habituellement l'URL. p>
De ce que j'ai trouvé dans ce numéro, NGRX-Data ne prend pas encore en charge les paramètres. p>
http.post ('ServerurL / héros / Héroïde / armes ', SwordObject); Code> P>
3 Réponses :
Vous devez utiliser magasin de routeur de NGRX. P>
Avec le magasin, vous avez ces sélecteurs: P>
Vous pouvez donc facilement obtenir tous vos besoins pour construire les différents chemins. p> selectqueryparams code>,
selecttrouteparams code>,
selecttroutedata code> et le
selecturl code>. P>.
Dans mon cas, j'ai créé le service:
@Injectable() export class OrganizationDataService extends DefaultDataService<Organization> { constructor(http: HttpClient, httpUrlGenerator: DefaultHttpUrlGenerator, logger: Logger) { super('Organization', http, httpUrlGenerator); } getAll(): Observable<Organization[]> { console.log('getAll called'); // custom call to api correct variant: return this.execute('GET', `${environment.apiUrl}org/${someId}/apps`) // custom call to api also worked variant: // return this.http.get<Organization[]>(`${environment.apiUrl}org/${someId}/apps`); } }
C'est ce que je fais maintenant, mais cela ne renvoie que l'observable qu'il ne fonctionne pas avec le magasin.
@Vladymyr K Où vient-il quelqu'un de quelqu'un? C'est mon problème maintenant.
@ Godrules500 Avez-vous réussi à comprendre cela? avoir le même problème
@Vato, vous devez enregistrer le service NGRX.IO/API/DATA/ENTITYDATASERVICE#REGISSERSERVICE REJET a>
J'ai fini par utiliser GetWithQuery Fonction: au lieu d'utiliser getall. p> p> p>