For the following functions, the property order of the passed in object matters due to type inference:
The correct property order is as follows
All other properties are insensitive to the order as they do not depend on type inference.
Examples of incorrect code for this rule:
/* eslint "@tanstack/router/create-route-property-order": "warn" */
import { createFileRoute } from '@tanstack/react-router'
export const Route = createFileRoute('/path')({
loader: async ({ context }) => {
await context.queryClient.ensureQueryData(getQueryOptions(context.hello))
},
beforeLoad: () => ({ hello: 'world' }),
})
/* eslint "@tanstack/router/create-route-property-order": "warn" */
import { createFileRoute } from '@tanstack/react-router'
export const Route = createFileRoute('/path')({
loader: async ({ context }) => {
await context.queryClient.ensureQueryData(getQueryOptions(context.hello))
},
beforeLoad: () => ({ hello: 'world' }),
})
/* eslint "@tanstack/router/create-route-property-order": "warn" */
import { createFileRoute } from '@tanstack/solid-router'
export const Route = createFileRoute('/path')({
loader: async ({ context }) => {
await context.queryClient.ensureQueryData(getQueryOptions(context.hello))
},
beforeLoad: () => ({ hello: 'world' }),
})
/* eslint "@tanstack/router/create-route-property-order": "warn" */
import { createFileRoute } from '@tanstack/solid-router'
export const Route = createFileRoute('/path')({
loader: async ({ context }) => {
await context.queryClient.ensureQueryData(getQueryOptions(context.hello))
},
beforeLoad: () => ({ hello: 'world' }),
})
Examples of correct code for this rule:
/* eslint "@tanstack/router/create-route-property-order": "warn" */
import { createFileRoute } from '@tanstack/react-router'
export const Route = createFileRoute('/path')({
beforeLoad: () => ({ hello: 'world' }),
loader: async ({ context }) => {
await context.queryClient.ensureQueryData(getQueryOptions(context.hello))
},
})
/* eslint "@tanstack/router/create-route-property-order": "warn" */
import { createFileRoute } from '@tanstack/react-router'
export const Route = createFileRoute('/path')({
beforeLoad: () => ({ hello: 'world' }),
loader: async ({ context }) => {
await context.queryClient.ensureQueryData(getQueryOptions(context.hello))
},
})
/* eslint "@tanstack/router/create-route-property-order": "warn" */
import { createFileRoute } from '@tanstack/solid-router'
export const Route = createFileRoute('/path')({
beforeLoad: () => ({ hello: 'world' }),
loader: async ({ context }) => {
await context.queryClient.ensureQueryData(getQueryOptions(context.hello))
},
})
/* eslint "@tanstack/router/create-route-property-order": "warn" */
import { createFileRoute } from '@tanstack/solid-router'
export const Route = createFileRoute('/path')({
beforeLoad: () => ({ hello: 'world' }),
loader: async ({ context }) => {
await context.queryClient.ensureQueryData(getQueryOptions(context.hello))
},
})
Your weekly dose of JavaScript news. Delivered every Monday to over 100,000 devs, for free.