2017年12月19日火曜日

【vue-electron】vue-property-decorator使用時に、エラーコードTS1238が出た時の直し方

【vue-electron】vue-property-decorator使用時に、エラーコードTS1238が出た時の直し方

vue-electronでvue-property-decoratorを使おうとしたところ、webpackでのビルド時に下記エラーが出ました。

ERROR in Index.vue.ts [tsl] ERROR in Index.vue.ts(54,1) TS1238: Unable to resolve signature of class decorator when called as an expression. Type '<VC extends VueClass<Vue>>(target: VC) => VC' is not assignable to type 'typeof CharacterIndex'. Property 'extend' is missing in type '<VC extends VueClass<Vue>>(target: VC) => VC'.

このエラーの修正方法の記事です。

コード

<template> <div> <h1>キャラクター一覧</h1> </div> </template> <script lang="ts"> import { Vue, Component, Prop } from 'vue-property-decorator' @Component export default class CharacterIndex extends Vue { @Prop({default: 'character-index'}) name:string } </script> <style> </style>

修正方法

tsconfig.jsonに下記を追加してください。

"compilerOptions": { "strictFunctionTypes": false }

strictFunctionTypesに関しては下記記事を参考にしてください。

TypeScript 2.6.1 変更点

0 件のコメント: