feat: support ref for provide api

This commit is contained in:
Justineo
2021-02-22 14:14:54 +08:00
parent 5744cd1f53
commit cd02c3131c
6 changed files with 128 additions and 7 deletions

View File

@ -1,4 +1,4 @@
import { inject, computed, Ref, watchEffect } from "vue-demi";
import { inject, unref, computed, Ref, watchEffect } from "vue-demi";
import { EChartsType } from "../types";
export const LOADING_OPTIONS_KEY = "ecLoadingOptions";
@ -8,9 +8,11 @@ export function useLoading(
loading: Ref<boolean>,
loadingOptions?: Ref<object | undefined>
): void {
const defaultLoadingOptions = inject(LOADING_OPTIONS_KEY, {}) as object;
const defaultLoadingOptions = inject(LOADING_OPTIONS_KEY, {}) as
| object
| Ref<object>;
const realLoadingOptions = computed(() => ({
...defaultLoadingOptions,
...unref(defaultLoadingOptions),
...loadingOptions?.value
}));