-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Description
Which project does this relate to?
Start
Describe the bug
const testParentMiddleware = createMiddleware({ type: "request" }).server(
async ({ next, request }) => {
console.info("In: testParentMiddleware");
const result = await next({ context: { testParent: true } });
result.response.headers.set("x-test-parent", "true");
console.info("Out: testParentMiddleware");
return result;
},
);
const testMiddleware = createMiddleware({ type: "request" })
.middleware([testParentMiddleware])
.server(async ({ next, request }) => {
console.info("In: testMiddleware");
const result = await next({ context: { test: true } });
result.response.headers.set("x-test", "true");
console.info("Out: testMiddleware");
return result;
});
export const ServerRoute = createServerFileRoute("/api/users")
.middleware([userLoggerMiddleware, testParentMiddleware, testMiddleware])
.methods({
GET: async ({ request, context }) => {
console.info("GET /api/users @", request.url);
console.info("Fetching users... @", request.url);
console.info("Context:", context); // context inferred type is { testParent: boolean; test: boolean; }, but actually got { test:true }, expected is {test:true,testParent:true}
const res = await fetch("https://jsonplaceholder.typicode.com/users");
if (!res.ok) {
throw new Error("Failed to fetch users");
}
const data = (await res.json()) as Array<User>;
const list = data.slice(0, 10);
return json(list.map((u) => ({ id: u.id, name: u.name, email: u.email })));
},
});Your Example Website or App
https://github.com/xtmu/start-basic
Steps to Reproduce the Bug or Issue
npm run dev- go to page /api/users
- check app server log, found
Context: { test: true }
Expected behavior
npm run dev- go to page /api/users
- check app server log, found
Context: { testParent:true, test: true }
Screenshots or Videos
No response
Platform
- Router / Start Version: [1.124.0]
- OS: [Linux]
- Browser: [ Firefox]
- Browser Version: [e.g. 91.1]
- Bundler: [e.g. vite]
- Bundler Version: [e.g. 7.0.0]
Additional context
No response
Metadata
Metadata
Assignees
Labels
No labels