前提・実現したいこと
Vue3 の型定義で VS Code によるエラーが出ます。
エラーが出ないようにするにはどうすれば良いでしょうか?
config/app.tsから読み込んだオブジェクトを、composable/useAppState.tsの関数で返し、views/Home.vue テンプレートで表示する処理です。
views/Home.vueの {{ appState.name }} で以下のエラーが表示されました。
発生している問題・エラーメッセージ
オブジェクト型は 'unknown' です。 ts(2571)
該当のソースコード
types/App.ts
TypeScript
1export interface App { 2 name: string 3}
config/app.ts
TypeScript
1import { App } from '@/types/App' 2 3export const app:Readonly<App> = Object.freeze({ 4 name: 'アプリケーション名' 5})
composable/useAppState.ts
TypeScript
1import { computed } from 'vue' 2import { app } from '@/config/app' 3 4export const useAppState = (): Record<string, unknown> => { 5 const appState = computed(() => { 6 return app 7 }) 8 9 return { appState } 10}
views/Home.vue
Vue
1<template> 2 <div>{{ appState.name }}</div> 3</template> 4 5<script lang="ts> 6import { defineComponent } from 'vue' 7import { useAppState } from '@/composable/useAppState' 8 9export default defineComponent({ 10 setup () { 11 const { appState } = useAppState() 12 13 return { 14 appState 15 } 16 } 17}) 18</script>
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。