Skip to content

Commit 1e88734

Browse files
Kaorun343ktsn
authored andcommitted
fix types (#26)
to specify `this` inside `ComponentOptions`
1 parent d6f9e94 commit 1e88734

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ const internalHooks = [
1818
export type VueClass = { new (): Vue } & typeof Vue
1919

2020
function componentFactory (
21-
Component: VueClass,
21+
Component: VueClass,
2222
options: Vue.ComponentOptions<any> = {}
2323
): VueClass {
2424
options.name = options.name || (Component as any)._componentTag
@@ -53,7 +53,7 @@ function componentFactory (
5353
return Super.extend(options)
5454
}
5555

56-
export default function decorator (options: Vue.ComponentOptions<any>): <V extends VueClass>(target: V) => V
56+
export default function decorator <U extends Vue>(options: Vue.ComponentOptions<U>): <V extends VueClass>(target: V) => V
5757
export default function decorator <V extends VueClass>(target: V): V
5858
export default function decorator <V extends VueClass>(options: Vue.ComponentOptions<any> | V): any {
5959
if (typeof options === 'function') {

test/test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ describe('vue-class-component', () => {
6464
it('other options', (done) => {
6565
let v: number
6666

67-
@Component({
67+
@Component<MyComp>({
6868
watch: {
6969
a: val => v = val
7070
}

0 commit comments

Comments
 (0)