@@ -602,7 +602,7 @@ test.describe("Prerendering", () => {
602
602
"app/routes/about.tsx" : js `
603
603
import { useLoaderData } from 'react-router';
604
604
export function loader({ request }) {
605
- return "ABOUT-" + request.headers.has('X-React-Router-Prerender' );
605
+ return "ABOUT-" + Boolean(process.env.IS_RR_BUILD_REQUEST );
606
606
}
607
607
608
608
export default function Comp() {
@@ -613,7 +613,7 @@ test.describe("Prerendering", () => {
613
613
"app/routes/not-prerendered.tsx" : js `
614
614
import { useLoaderData } from 'react-router';
615
615
export function loader({ request }) {
616
- return "NOT-PRERENDERED-" + request.headers.has('X-React-Router-Prerender' );
616
+ return "NOT-PRERENDERED-" + Boolean(process.env.IS_RR_BUILD_REQUEST );
617
617
}
618
618
619
619
export default function Comp() {
@@ -659,7 +659,7 @@ test.describe("Prerendering", () => {
659
659
import { useLoaderData } from 'react-router';
660
660
export function loader({ request }) {
661
661
return {
662
- prerendered: request.headers.has('X-React-Router-Prerender') ? 'yes' : 'no' ,
662
+ prerendered: process.env.IS_RR_BUILD_REQUEST ?? "no" ,
663
663
// 24999 characters
664
664
data: new Array(5000).fill('test').join('-'),
665
665
};
@@ -712,7 +712,7 @@ test.describe("Prerendering", () => {
712
712
import { useLoaderData } from 'react-router';
713
713
export function loader({ request }) {
714
714
return {
715
- prerendered: request.headers.has('X-React-Router-Prerender') ? 'yes' : 'no' ,
715
+ prerendered: process.env.IS_RR_BUILD_REQUEST ?? "no" ,
716
716
data: "한글 데이터 - UTF-8 문자",
717
717
};
718
718
}
@@ -732,7 +732,7 @@ test.describe("Prerendering", () => {
732
732
import { useLoaderData } from 'react-router';
733
733
export function loader({ request }) {
734
734
return {
735
- prerendered: request.headers.has('X-React-Router-Prerender') ? 'yes' : 'no' ,
735
+ prerendered: process.env.IS_RR_BUILD_REQUEST ?? "no" ,
736
736
data: "非プリレンダリングデータ - UTF-8文字",
737
737
};
738
738
}
@@ -837,6 +837,18 @@ test.describe("Prerendering", () => {
837
837
await page . waitForSelector ( "[data-mounted]" ) ;
838
838
expect ( await app . getHtml ( ) ) . toMatch ( "Index: INDEX" ) ;
839
839
} ) ;
840
+
841
+ test ( "Ignores build-time headers at runtime" , async ( ) => {
842
+ fixture = await createFixture ( { files } ) ;
843
+ let res = await fixture . requestSingleFetchData ( "/_root.data" , {
844
+ headers : {
845
+ "X-React-Router-Prerender-Data" : encodeURI (
846
+ '[{"_1":2},"routes/_index",{"_3":4},"data","Hello World!"]'
847
+ ) ,
848
+ } ,
849
+ } ) ;
850
+ expect ( ( res . data as any ) [ "routes/_index" ] . data ) . toBe ( "Index Loader Data" ) ;
851
+ } ) ;
840
852
} ) ;
841
853
842
854
test . describe ( "ssr: false" , ( ) => {
0 commit comments