TypeScriptを既存のVueJS + Railsアプリに追加しようとしています。このデモ(https://github.com/gbarillot/rails-vue-demo-app)のクローンを作成し、https://github.com/rails/webpackerの指示に従いました。
$ bundle exec rails webpacker:install:vue
$ bundle exec rails webpacker:install:typescript
次に、ここでconfig/webpack/loaders/typescript.js
説明するように変更しました。
すべてがコンパイルされているように見えますが、「ホーム」ビューに移動して、script
をtypescriptに変更すると次のようになります。
<script lang="ts">
import Layout from '../shared/layout';
export default {
components: {
Layout
}
}
</script>
次のエラーが発生します。
Failed to compile.
/Users/matt/projects/rails-vue-demo-app/app/javascript/packs/components/home/index.vue.ts
[tsl] ERROR in /Users/matt/projects/rails-vue-demo-app/app/javascript/packs/components/home/index.vue.ts(13,20)
TS2307: Cannot find module '../shared/layout'.
typescriptが有効になっていると、レイアウトファイルが見つからないのはなぜですか?
プレゼンテーションコンポーネントで同様の問題が発生したことを覚えています。shared/layout
typescriptがそれを取得できるように、空のエクスポートを追加してみてください。
<script lang="ts">
export default {}
</script>
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加