I want to add a loading spinner component, as long as the data from the api has not arrived. I worked before in Vue2 + JavaScript and are super new to Vue3 + TypeScript.
I tried to archive it like that, but fail (different attempts of loading the TheCustomersTable are commented out above loader:)
<script lang="ts">
import { computed, defineComponent, defineAsyncComponent } from "vue";
import CustomersModule from "@/store/modules/customers";
// import TheCustomersTable from "@/components/Elements/customers/TheCustomersTable.vue";
import LoadingSpinner from "@/components/Elements/LoadingSpinner.vue";
// import BaseFilter from "@/components/Elements/Filter/BaseFilter.vue";
// LoadingSpinner: (): Promise<defineAsyncComponent> => import('@/components/Elements/LoadingSpinner.vue')
const TheCustomersTable = defineAsyncComponent({
// loader: (import ("@/components/Elements/Filter/BaseFilter.vue")) /*webpackChunkName: "user" */,
// loader: import ("@/components/Elements/customers/TheCustomersTable.vue") /*webpackChunkName: "user" */,
// loader: (): Promise<defineAsyncComponent> => import('@/components/Elements/customers/TheCustomersTable.vue'),
loader: import('@/components/Elements/customers/TheCustomersTable.vue'),
// loader: TheCustomersTable,
loadingComponent: LoadingSpinner,
delay: 2000,
suspensible: false,
// errorComponent: ErrorCmp,
timeout: 3000
})
export default defineComponent({
name: "CustomersView",
components: {
// LoadingSpinner,
// BaseFilter,
TheCustomersTable
},
Unfortunately I do not find much material, to how to pull that off