# useOptimisticData
Gets the latest optimistic data with matching optimistic id from actions. Use `OptimisticInput` to accept optimistic data in forms.
```js
import {CartForm, OptimisticInput, useOptimisticData} from '@shopify/hydrogen';
export default function Cart({line}) {
const optimisticId = line.id;
const optimisticData = useOptimisticData(optimisticId);
return (
);
}
```
```ts
import {CartForm, OptimisticInput, useOptimisticData} from '@shopify/hydrogen';
import {CartLine} from '@shopify/hydrogen-react/storefront-api-types';
type OptimisticData = {
action: string;
};
export default function Cart({line}: {line: CartLine}) {
const optimisticId = line.id;
const optimisticData = useOptimisticData(optimisticId);
return (
);
}
```
## Props
### UseOptimisticDataGeneratedType
#### Returns:
#### Params:
- identifier: string
export function useOptimisticData(identifier: string) {
const fetchers = useFetchers();
const data: Record = {};
for (const {formData} of fetchers) {
if (formData?.get('optimistic-identifier') === identifier) {
try {
if (formData.has('optimistic-data')) {
const dataInForm: unknown = JSON.parse(
String(formData.get('optimistic-data')),
);
Object.assign(data, dataInForm);
}
} catch {
// do nothing
}
}
}
return data as T;
}