Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reload service? #1

Open
eyesurewould opened this issue Aug 16, 2018 · 1 comment
Open

Reload service? #1

eyesurewould opened this issue Aug 16, 2018 · 1 comment

Comments

@eyesurewould
Copy link

I'm using your angular-contentful-service and I find it really simple for basic retrieval. However, in a slightly more complex app, I retrieve a single Entry (via the getEntry function) using a url param defined in my routes but can't get fresh data as I navigate around. Here is how I define the route so you can see that "id" is a param.

export const appRoutes: Routes = [ { path: "project/:id", component: ProjectDetailComponent, runGuardsAndResolvers: 'paramsChange' }

When I navigate to a different "project" (meaning the route is updated to replace the "id" param), a call is made to the getEntry function again with the new id but the Entry content is never updated (so no call is made out to Contentful's CDN which I can verify by watching network traffic).

If I manually refresh the page, I can see the network call out to Contentful and the response and then my page shows the updated content.

Is there a way to force a call to getEntry to load fresh data? Or do I need to somehow destroy the service (or my component) and reload it? I'd much rather use your service versus making raw HTTP curl calls.

Thanks

@tommitieto
Copy link

Service is caching calls with query parameters not with content id. That's why you are getting same response every time.

Maybe id should be included to cache key in getEntry function.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants