Browse Source
* Update options.d.ts * Create async-component-test.ts * add generics to Component ad EsModuleComponent * remove not needed , and ; * revert unrelated changes * revert unrelated changes * revert unrelated changes * revert unrelated changes * optimize EsModuleImports * Update async-component-test.tsdev
Sebastian Krüger
4 years ago
committed by
GitHub
2 changed files with 52 additions and 7 deletions
@ -0,0 +1,44 @@ |
|||||
|
import Vue, { AsyncComponent, Component } from "../index"; |
||||
|
|
||||
|
const a: AsyncComponent = () => ({ |
||||
|
component: new Promise<Component>((res, rej) => { |
||||
|
res({ template: "" }) |
||||
|
}) |
||||
|
}) |
||||
|
|
||||
|
const b: AsyncComponent = () => ({ |
||||
|
// @ts-expect-error component has to be a Promise that resolves to a component
|
||||
|
component: () => |
||||
|
new Promise<Component>((res, rej) => { |
||||
|
res({ template: "" }) |
||||
|
}) |
||||
|
}) |
||||
|
|
||||
|
const c: AsyncComponent = () => |
||||
|
new Promise<Component>((res, rej) => { |
||||
|
res({ |
||||
|
template: "" |
||||
|
}) |
||||
|
}) |
||||
|
|
||||
|
const d: AsyncComponent = () => |
||||
|
new Promise<{ default: Component }>((res, rej) => { |
||||
|
res({ |
||||
|
default: { |
||||
|
template: "" |
||||
|
} |
||||
|
}) |
||||
|
}) |
||||
|
|
||||
|
const e: AsyncComponent = () => ({ |
||||
|
component: new Promise<{ default: Component }>((res, rej) => { |
||||
|
res({ |
||||
|
default: { |
||||
|
template: "" |
||||
|
} |
||||
|
}) |
||||
|
}) |
||||
|
}) |
||||
|
|
||||
|
// Test that Vue.component accepts any AsyncComponent
|
||||
|
Vue.component("async-compponent1", a) |
Loading…
Reference in new issue