前提・実現したいこと
VueRouterを使ってコンポーネントを切り替えたい。
発生している問題・エラーメッセージ
Failed to compile. ./src/router.js Module not found: Error: Can't resolve './components/ConsulationFormPage' in '/Users/yohei/Documents/git/kadai/vue-questionnaire/src'
該当のソースコード
↓main.jsの中身です。
javascript
1import { createApp } from 'vue' 2import App from './App.vue' 3import router from './router' 4 5createApp(App).use(router).mount('#app')
↓router.jsの中身です。
javascript
1import Vue from "vue"; 2import VueRouter from "vue-router"; 3import Basicinfomation from "./components/Basicinfomation"; 4import QuestionPage from "./components/QuestionPage"; 5import ConsulationFormPage from "./components/ConsulationFormPage"; 6 7Vue.use(VueRouter); 8 9export default new VueRouter({ 10 routes: [ 11 { path: "/", component: Basicinfomation }, 12 { path: "/question", component: QuestionPage }, 13 { path: "/consulation", component: ConsulationFormPage } 14 ] 15});
試したこと
試しにVueRouterのファイルをコメントアウトしたところエラー画面は出なくなったのですが、画面が真っ白になり何も表示されなくなりました。
補足情報(FW/ツールのバージョンなど)
vueのバージョンは@vue/cli 4.5.9です。
Vue3を使っています。
Vue3以降Vueオブジェクトは使用されないとのことでrouter.jsを以下のように書き換えてみましたが状況は変わらずでした。
javascript
1import { createApp } from 'vue'; 2import App from './App.vue'; 3import VueRouter from 'vue-router'; 4import BasicInfomation from '/Users/fukutomeyouhei/Documents/git/MENTA-kadai/vue-questionnaire/src/components/BasicInfomation.vue'; 5import QuestionsPage from '/Users/fukutomeyouhei/Documents/git/MENTA-kadai/vue-questionnaire/src/components/QuestionsPage.vue'; 6import ConsultationFormPage from '/Users/fukutomeyouhei/Documents/git/MENTA-kadai/vue-questionnaire/src/components/ ConsultationFormPage.vue'; 7 8const app = createApp(App); 9app.use(VueRouter); 10 11export default new VueRouter({ 12 routes: [ 13 { path: '/', component: BasicInfomation }, 14 { path: '/question', component: QuestionsPage }, 15 { path: '/consulation', component: ConsultationFormPage } 16 ] 17});
importする時のパスを相対パスから絶対パスに変えてみたところエラー画面は出なくなったのですが、
コンソールを確認したところこのようなエラーが表示されていました。
###エラー内容
Uncaught TypeError: Object.defineProperty called on non-object
at Function.defineProperty (<anonymous>)
at Function.install (vue-router.esm.js?8c4f:1283)
at Object.use (runtime-core.esm-bundler.js?5c40:2948)
at eval (router.js?41cb:9)
at Module../src/router.js (app.js:1303)
at webpack_require (app.js:849)
at fn (app.js:151)
at eval (main.js:12)
at Module../src/main.js (app.js:1291)
at webpack_require (app.js:849)
ご教授いただければ幸いです????♂️
あなたの回答
tips
プレビュー