S
SolidJS10mo ago
Blankeos

Is there a way to skip the createResource query until a parameter is available?

Something similar to Tanstack Query or Apollo, maybe?
const [collations] = createResource(
async () => {
try {
const response = await hc.collations[":collationId"].$get({
param: {
collationId: routeParams!["collationId"],
},
});
return await response?.json();
} catch (e) {
return null;
}
},
{
skip: routeParams?.collationId,
}
);
const [collations] = createResource(
async () => {
try {
const response = await hc.collations[":collationId"].$get({
param: {
collationId: routeParams!["collationId"],
},
});
return await response?.json();
} catch (e) {
return null;
}
},
{
skip: routeParams?.collationId,
}
);
No description
3 Replies
Blankeos
BlankeosOP10mo ago
I'll probably just install TanStack haha
deluksic
deluksic10mo ago
If you return falsy from source, it will not run until it is truthy
peerreynders
peerreynders10mo ago
From: https://docs.solidjs.com/reference/basic-reactivity/create-resource.
or you can additionally pass a source signal as the first argument
Basically feed the parameter through a signal.
fetchData will be called as soon as source has any value other than false, null, or undefined.
as was already mentioned previously.

Did you find this page helpful?