Hello @ojasshukla211, Phil is away for the day so I'll be helping you instead. Which form do you need help with? Can you point out the piece of code you want us to investigate in detail together?
Hi thankyou for coming upfront so I was trying to fetch pages concurrently for the first time then after that i tired to fetch them all at once to fix the problem of taking so long to respond but seems like that also not solve the problem is there any way i can able to fix that
The first thing I can see is that you're still using .query()
, this is replaced with .get()
in V6. I recommend that you refer to the migration guide before making any additional changes to your project:
it complains about this error
[0] /Users/desartist22/Documents/GitHub/floema_/app.js:117
[0] collection.data.products.forEach((item) => {
[0] ^
[0]
[0] TypeError: Cannot read properties of undefined (reading 'forEach')
[0] at /Users/desartist22/Documents/GitHub/floema_/app.js:117:30
[0] at Array.forEach (<anonymous>)
[0] at handleRequest (/Users/desartist22/Documents/GitHub/floema_/app.js:116:15)
[0] at processTicksAndRejections (node:internal/process/task_queues:96:5)
[0] at async /Users/desartist22/Documents/GitHub/floema_/app.js:137:20
after replacing .query
to .get()
also it showing unexpected results and the problem i am trying to resolve isnt solved like it still take that type of time inbetween to fetch the pages maybe its because that the Imgur: The magic of the Internet
We are replicating our /api endpoint in 2 regions (Europe, Australia) for all users on February 26, 2022. If you’re in Europe, Asia, or Oceania, this will decrease the response time of all /api queries by more than 60% on average.
maybe this can be the case ..
by following your v6 migration guide i did some changes and.... now it complains about .getSingle
error
[0] /Users/desartist22/Documents/GitHub/floema_/app.js:86
[0] api.getSingle('meta'),
[0] ^
[0]
[0] TypeError: Cannot read properties of undefined (reading 'getSingle')
[0] at handleRequest (/Users/desartist22/Documents/GitHub/floema_/app.js:86:11)
[0] at /Users/desartist22/Documents/GitHub/floema_/app.js:137:26
i not able to find the migration of that
help me @Prismic-Support-Team
The issue here seems to be that your app is failing at the api
part.
- Where and how are you declaring this?
- Are you passing it correctly to your promise?
this is how i initialised my api
// Initialize the prismic.io api
const initApi = (req) => {
const client = Prismic.createClient(process.env.PRISMIC_ENDPOINT, {
accessToken: process.env.PRISMIC_ACCESS_TOKEN,
fetch,
});
client.enableAutoPreviewsFromReq(req);
};
this is where i am passing it
const handleRequest = async (api) => {
const [meta, preloader, navigation, home, about, { results: collections }] =
await Promise.all([
api.getSingle('meta'),
api.getSingle('preloader'),
api.getSingle('navigation'),
api.getSingle('home'),
api.getSingle('about'),
api.query(Prismic.predicate.at('document.type', 'collection'), {
fetchLinks: 'product.image',
}),
]);
console.log(about.data.body);
const assets = [];
home.data.gallery.forEach((item) => {
assets.push(item.image.url);
});
about.data.gallery.forEach((item) => {
assets.push(item.image.url);
});
about.data.body.forEach((section) => {
if (section.slice_type === 'gallery') {
section.items.forEach((item) => {
assets.push(item.image.url);
});
}
});
collections.forEach((collection) => {
collection.data.products.forEach((item) => {
assets.push(item.products_product.data.image.url);
});
});
console.log(assets);
return {
assets,
meta,
home,
collections,
about,
navigation,
preloader,
};
};
app.get('/', async (req, res) => {
const api = await initApi(req);
const defaults = await handleRequest(api);
res.render('pages/home', {
...defaults,
});
});
this is example of one route
app.get('/about', async (req, res) => {
const api = await initApi(req);
const defaults = await handleRequest(api);
res.render('pages/about', {
...defaults,
});
});
It looks like you found the answer for this issue here:
no sir i've been experiencing lot of issues related to prismic recently not even know what to do now eventho documentation is also not that updated and migration guide also not that helpful :c eventho in help support not getting expected response that i want i wish i had someone in person who used to work in prismic so i can able to resolve that problem that i am having. this thing sucks that providing every information also not so helpfull
I'm sorry you feel that way.
We are the official Prismic support team who work in Prismic and we can only help us with what information you give us. The main issues you are seeing are more related to your node.js implementation rather than Prismic specific issues. I'm sorry the migration process hasn't been smooth for you, but we're trying our best.
I'm happy to continue helping you debug your project. If you can again send me an up to date git of your project, I can devote more time to debuggin with you.
Thanks.
Thankyou sir for helping me I sent you the invitation to the github repo and also if you could have a look in this one would be very very appreciated and helpful Cannot read properties of undefined (reading 'url') when trying to get image - #11 by Priyanka
idk but ik the geek of prismic i asked from him why is that happening he asked me that
Have you included the images on all of the slices?
and i said yes
so he said we need a validation on them to get them work.
i not able to get him what he meant by validation but it would be nice if i able to know what it is
@Phil hey just invited you to two of the repositories one for this and one for this one Cannot read properties of undefined (reading 'url') when trying to get image - #11 by Priyanka and also for the the help sir seems like thankyou is not enough to say is there any way where i can gift you like buymecoffeee or something?
I have responded to your issue in the other thread.
No need for a gift, we're happy to give you our time to help.