UNPKG

linkmore-design

Version:

🌈 🚀lm组件库。🚀

43 lines (40 loc) 1.49 kB
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2"; import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray"; // 根文件 => 参数聚合 import React, { useMemo, useRef, useReducer, forwardRef, useImperativeHandle } from 'react'; import reducer, { initialState as initReducerState } from "./reducer"; import useCoreOptions from "../fns"; import LmImageViewerWrapper from "./Wrapper"; var LmImageViewerRoot = function LmImageViewerRoot(props, ref) { var previewRef = useRef(null); var initialState = useMemo(function () { return initReducerState(props); }, []); var _useReducer = useReducer(reducer, initialState), _useReducer2 = _slicedToArray(_useReducer, 2), state = _useReducer2[0], dispatch = _useReducer2[1]; // 获取核心Methods var _useCoreOptions = useCoreOptions({ state: state, dispatch: dispatch, props: props, previewRef: previewRef }), CoreMethods = _useCoreOptions.CoreMethods, RefMethods = _useCoreOptions.RefMethods; // 组件实例 var instance = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, props), CoreMethods), RefMethods), {}, { previewRef: previewRef, state: state, dispatch: dispatch }); // 向外暴露出的方法 useImperativeHandle(ref, function () { return {}; }); return /*#__PURE__*/React.createElement(LmImageViewerWrapper, { instance: instance }); }; export default /*#__PURE__*/forwardRef(LmImageViewerRoot);