pos. purchase. post. action. renderTarget
Target
A full-screen extension target that renders when a pos.purchase.post.action.menu-item.render
target calls for it
Was this section helpful?
Action
import React from 'react';
import {
Text,
Screen,
ScrollView,
Navigator,
useApi,
reactExtension,
} from '@shopify/ui-extensions-react/point-of-sale';
const Modal = () => {
const api = useApi<'pos.purchase.post.action.render'>();
return (
<Navigator>
<Screen name="HelloWorld" title="Hello World!">
<ScrollView>
<Text>{`Order ID for complete checkout: ${api.order.id}`}</Text>
</ScrollView>
</Screen>
</Navigator>
);
};
export default reactExtension('pos.purchase.post.action.render', () => (
<Modal />
));
examples
Action
React
import React from 'react'; import { Text, Screen, ScrollView, Navigator, useApi, reactExtension, } from '@shopify/ui-extensions-react/point-of-sale'; const Modal = () => { const api = useApi<'pos.purchase.post.action.render'>(); return ( <Navigator> <Screen name="HelloWorld" title="Hello World!"> <ScrollView> <Text>{`Order ID for complete checkout: ${api.order.id}`}</Text> </ScrollView> </Screen> </Navigator> ); }; export default reactExtension('pos.purchase.post.action.render', () => ( <Modal /> ));
TS
import { Navigator, Screen, ScrollView, Text, extension, } from '@shopify/ui-extensions/point-of-sale'; export default extension('pos.purchase.post.action.render', (root, api) => { const navigator = root.createComponent(Navigator); const screen = root.createComponent(Screen, { name: 'HelloWorld', title: 'Hello World!', }); const scrollView = root.createComponent(ScrollView); const text = root.createComponent(Text); text.append(`Order ID for complete checkout: ${api.order.id}`); scrollView.append(text); screen.append(scrollView); navigator.append(screen); root.append(navigator); });