- Want to add more pages? Please refer to{' '} - - use block - - 。 -
-
-
- {children}
-
-
-);
-
-const Welcome: React.FC = () => {
- const intl = useIntl();
-
- return (
- 活跃用户
-{activeUser}
-新增用户
-{newUser}
-
-
-
-
= - | React.StatelessComponent
- | React.ComponentClass
- | React.ClassicComponentClass
; - -function computeHeight(node: HTMLDivElement) { - const { style } = node; - style.height = '100%'; - const totalHeight = parseInt(`${getComputedStyle(node).height}`, 10); - const padding = - parseInt(`${getComputedStyle(node).paddingTop}`, 10) + - parseInt(`${getComputedStyle(node).paddingBottom}`, 10); - return totalHeight - padding; -} - -function getAutoHeight(n: HTMLDivElement | undefined) { - if (!n) { - return 0; - } - - const node = n; - - let height = computeHeight(node); - const parentNode = node.parentNode as HTMLDivElement; - if (parentNode) { - height = computeHeight(parentNode); - } - - return height; -} - -type AutoHeightProps = { - height?: number; -}; - -function autoHeight() { - return
( - WrappedComponent: React.ComponentClass
| React.FC
, - ): React.ComponentClass
=> { - class AutoHeightComponent extends React.Component
{ - state = { - computedHeight: 0, - }; - - root: HTMLDivElement | undefined = undefined; - - componentDidMount() { - const { height } = this.props; - if (!height) { - let h = getAutoHeight(this.root); - this.setState({ computedHeight: h }); - if (h < 1) { - h = getAutoHeight(this.root); - this.setState({ computedHeight: h }); - } - } - } - - handleRoot = (node: HTMLDivElement) => { - this.root = node; - }; - - render() { - const { height } = this.props; - const { computedHeight } = this.state; - const h = height || computedHeight; - return ( -