Ben Lin
2024-06-27 dfd2d0218bbcea93b4bfb0e7ca7ac9b1cc1cc7da
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import type { InjectionKey, ComputedRef } from 'vue';
import { createContext, useContext } from '@/hooks/core/useContext';
 
export interface ContentContextProps {
  contentHeight: ComputedRef<number>;
  setPageHeight: (height: number) => Promise<void>;
}
 
const key: InjectionKey<ContentContextProps> = Symbol();
 
export function createContentContext(context: ContentContextProps) {
  return createContext<ContentContextProps>(context, key, { native: true });
}
 
export function useContentContext() {
  return useContext<ContentContextProps>(key);
}