-
is there any way to change default value ? suppose this is my component export const FilterType = {
query: parseAsString.withDefault(''),
withRecognizedTerms: parseAsBoolean.withDefault(true)
}
interface Props {
filters: ReturnType<typeof useQueryStates<typeof FilterType>>[0]
setFilter: ReturnType<typeof useQueryStates<typeof FilterType>>[1]
}
const Test = ({ userRecognizedTerms }: { userRecognizedTerms: boolean }) => {
const [filters, setFilter] = useQueryStates(FilterType, {
clearOnDefault: true,
})
return (
<>Test</>
);
} I know I can do this without defining interface Props {
filters: ?
setFilter: ?
}
const Test = ({ userRecognizedTerms }: { userRecognizedTerms: boolean }) => {
const [filters, setFilter] = useQueryStates({
query: parseAsString.withDefault(''),
withRecognizedTerms: parseAsBoolean.withDefault(userRecognizedTerms)
}, {
clearOnDefault: true,
})
return (
<>Test</>
);
} |
Beta Was this translation helpful? Give feedback.
Answered by
franky47
Mar 19, 2024
Replies: 1 comment 1 reply
-
How about using a function to create the search params descriptor object? export const createFilterType = (withRecognizedTermsDefault: boolean) => ({
query: parseAsString.withDefault(''),
withRecognizedTerms: parseAsBoolean.withDefault(withRecognizedTermsDefault)
})
type FilterType = ReturnType<typeof createFilterType>
interface Props {
filters: ReturnType<typeof useQueryStates<FilterType>>[0]
setFilter: ReturnType<typeof useQueryStates<FilterType>>[1]
}
const Test = ({ userRecognizedTerms }: { userRecognizedTerms: boolean }) => {
const [filters, setFilter] = useQueryStates(createFilterType(userRecognizedTerms), {
clearOnDefault: true,
})
return (
<>Test</>
);
} |
Beta Was this translation helpful? Give feedback.
1 reply
Answer selected by
Kavan72
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
How about using a function to create the search params descriptor object?