@coveo/headless-react
    Preparing search index...

    Interface Recommendations

    The Recommendations controller exposes a method for retrieving recommendations content in a commerce interface.

    Example: recommendations.fn.tsx

    interface Recommendations {
        state: RecommendationsState;
        interactiveProduct(props: InteractiveProductProps): InteractiveProduct;
        pagination(props?: PaginationProps): Pagination;
        promoteChildToParent(child: ChildProduct): void;
        refresh(): void;
        subscribe(listener: () => void): Unsubscribe;
        summary(): Summary<SummaryState>;
    }

    Hierarchy (View Summary)

    Index

    Buildable controllers - Recommendations

    Methods

    Buildable controllers - Recommendations

    A scoped and simplified part of the headless state that is relevant to the Recommendations controller.

    Methods

    • Creates an InteractiveProduct sub-controller.

      Parameters

      Returns InteractiveProduct

      An InteractiveProduct sub-controller.

    • Creates a Pagination sub-controller.

      Parameters

      • Optionalprops: PaginationProps

        The optional properties for the Pagination sub-controller.

      Returns Pagination

      A Pagination sub-controller.

    • Finds the specified parent product and the specified child product of that parent, and makes that child the new parent. The children and totalNumberOfChildren properties of the original parent are preserved in the new parent.

      This method is useful when leveraging the product grouping feature to allow users to select nested products.

      E.g., if a product has children (such as color variations), you can call this method when the user selects a child to make that child the new parent product, and re-render the product as such in the storefront.

      Note: In the controller state, a product that has children will always include itself as its own child so that it can be rendered as a nested product, and restored as the parent product through this method as needed.

      Parameters

      • child: ChildProduct

        The child product that will become the new parent.

      Returns void

    • Fetches the recommendations.

      Returns void

    • Adds a callback that's invoked on state change.

      Parameters

      • listener: () => void

        A callback that's invoked on state change.

      Returns Unsubscribe

      A function to remove the listener.

    • Creates a Summary sub-controller.

      Returns Summary<SummaryState>

      A Summary sub-controller.