UNPKG

@rxflow/base

Version:

BaseFlow - 核心 Flow 组件库

37 lines (34 loc) 1.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.usePropsSelector = usePropsSelector; var _useSelector = require("../state/useSelector"); /** * @author: yanxianliang * @date: 2025-10-16 16:12 * @modified:2025/10/16 16:12 by yanxianliang * @desc: * * Copyright (c) 2025 by yanxianliang, All Rights Reserved. */ function usePropsSelector(selector) { return (0, _useSelector.useSelector)(state => { const props = state.props; return selector ? selector(props) : props; }); } // // export function usePropsSelector<GraphProps = IBaseFlowProps>(): GraphProps; // export function usePropsSelector<GraphProps = IBaseFlowProps, U = unknown>(selector: (state: ExtractState<StoreApi<GraphProps>>) => U): U; // // export function usePropsSelector< // GraphProps = IBaseFlowProps, // U = any, // >(selector?: ExtractState<StoreApi<GraphProps>>) { // const useStore = useContext(PropsContext)?.useStore as UseBoundStore<StoreApi<GraphProps>>; // if (!useStore) { // throw new Error("usePropsSelector must be used within PropsProvider"); // } // return useStore(selector as (state: ExtractState<StoreApi<GraphProps>>) => U); // }