Open3
Vue, Storybookでimport { Component } from 'vue'したときのエラー
Component
型をimportして使うと、ビルドもアプリケーションのランタイムは通っても、Storybookでエラーになる。
import { Component } from 'vue';
SyntaxError: The requested module '/node_modules/.vite-storybook/deps/vue.js?v=47797d56' does not provide an export named 'Component'
対処方法:
Type only importsにするとエラーが出なくなる。
import type { Component } from 'vue';
詳しくないので分からないが多分Storybook(with builder-vite)はvueのランタイムで必要な関数等を.vite-storybook/deps/vue.jsに生成しているが、Componentなどのtype定義は含まない。(たぶん)
一方で import { Component }
はtypeか値か判別できないのでコードに含まれ、最初のエラーが発生しているのだと思う。
type only importsにするとコードから除外されるのでエラーが出なくなる。 (たぶん)