Version: 3.xx.xxSwizzle Ready
<RefreshButton> uses Material UI <Button> component to update the data shown on the page via the useOne method provided by your dataProvider.
You can swizzle this component to customize it with the refine CLI
Usage
Live previews only work with the latest documentation.
import { useShow } from '@pankod/refine-core'
import { Show, Typography, Stack, RefreshButton } from '@pankod/refine-mui'
const PostShow: React.FC = () => {
  const { queryResult } = useShow<IPost>()
  const { data, isLoading } = queryResult
  const record = data?.data
  return (
    <Show
      isLoading={isLoading}
      headerButtons={
        <RefreshButton />
      }
    >
      <Typography fontWeight="bold">Id</Typography>
      <Typography>{record?.id}</Typography>
      <Typography fontWeight="bold">Title</Typography>
      <Typography>{record?.title}</Typography>
    </Show>
  )
}
interface IPost {
  id: number
  title: string
}
Properties
recordItemId
recordItemId allows us to manage which data is going to be refreshed.
Live previews only work with the latest documentation.
import { RefreshButton } from '@pankod/refine-mui'
const MyRefreshComponent = () => {
  return (
    <RefreshButton
      resourceNameOrRouteName="posts"
      recordItemId="1"
    />
  )
}
Clicking the button will trigger the useOne method and then fetches the record whose resource is "post" and whose id is "1".
<RefreshButton> component reads the id information from the route by default.
resourceNameOrRouteName
resourceNameOrRouteName allows us to manage which resource is going to be refreshed.
Live previews only work with the latest documentation.
import { RefreshButton } from '@pankod/refine-mui'
const MyRefreshComponent = () => {
  return (
    <RefreshButton
      recordItemId="1"
      resourceNameOrRouteName="posts"
    />
  )
}
Clicking the button will trigger the useOne method and then fetches the record whose resource is "categories" and whose id is "2".
<RefreshButton> component reads the resource name from the route by default.
hideText
It is used to show and not show the text of the button. When true, only the button icon is visible.
Live previews only work with the latest documentation.
import { RefreshButton } from '@pankod/refine-mui'
const MyRefreshComponent = () => {
  return (
    <RefreshButton
      hideText
      resourceNameOrRouteName="posts"
      recordItemId="1"
    />
  )
}
API Reference
Properties
It also accepts all props of Material UI Button.