From 108199a0ce32b33de60b2eb5089a040277390097 Mon Sep 17 00:00:00 2001 From: mesopelagique Date: Mon, 25 May 2020 18:41:52 +0200 Subject: [PATCH] Branch to show project with rooter --- vue/package-lock.json | 7 ++++++- vue/package.json | 4 +++- vue/src/App.vue | 32 ++++++++++++++++++-------------- vue/src/main.js | 4 +++- vue/src/router/index.js | 27 +++++++++++++++++++++++++++ vue/src/views/About.vue | 5 +++++ vue/src/views/Home.vue | 18 ++++++++++++++++++ 7 files changed, 80 insertions(+), 17 deletions(-) create mode 100644 vue/src/router/index.js create mode 100644 vue/src/views/About.vue create mode 100644 vue/src/views/Home.vue diff --git a/vue/package-lock.json b/vue/package-lock.json index 723af89..4a6fe4c 100644 --- a/vue/package-lock.json +++ b/vue/package-lock.json @@ -1,5 +1,5 @@ { - "name": "hello-world", + "name": "4d-hello-world", "version": "0.1.0", "lockfileVersion": 1, "requires": true, @@ -10685,6 +10685,11 @@ } } }, + "vue-router": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.2.0.tgz", + "integrity": "sha512-khkrcUIzMcI1rDcNtqkvLwfRFzB97GmJEsPAQdj7t/VvpGhmXLOkUfhc+Ah8CvpSXGXwuWuQO+x8Sy/xDhXZIA==" + }, "vue-style-loader": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.2.tgz", diff --git a/vue/package.json b/vue/package.json index ac6767d..7b471c5 100644 --- a/vue/package.json +++ b/vue/package.json @@ -9,11 +9,13 @@ }, "dependencies": { "core-js": "^3.6.4", - "vue": "^2.6.11" + "vue": "^2.6.11", + "vue-router": "^3.1.6" }, "devDependencies": { "@vue/cli-plugin-babel": "~4.3.0", "@vue/cli-plugin-eslint": "~4.3.0", + "@vue/cli-plugin-router": "^4.3.1", "@vue/cli-service": "~4.3.0", "babel-eslint": "^10.1.0", "eslint": "^6.7.2", diff --git a/vue/src/App.vue b/vue/src/App.vue index 55df315..6c26aa6 100644 --- a/vue/src/App.vue +++ b/vue/src/App.vue @@ -1,21 +1,13 @@ - - diff --git a/vue/src/main.js b/vue/src/main.js index 63eb05f..659607d 100644 --- a/vue/src/main.js +++ b/vue/src/main.js @@ -1,8 +1,10 @@ import Vue from 'vue' import App from './App.vue' +import router from './router' Vue.config.productionTip = false new Vue({ - render: h => h(App), + router, + render: h => h(App) }).$mount('#app') diff --git a/vue/src/router/index.js b/vue/src/router/index.js new file mode 100644 index 0000000..84ca35e --- /dev/null +++ b/vue/src/router/index.js @@ -0,0 +1,27 @@ +import Vue from 'vue' +import VueRouter from 'vue-router' +import Home from '../views/Home.vue' + +Vue.use(VueRouter) + + const routes = [ + { + path: '/', + name: 'Home', + component: Home + }, + { + path: '/about', + name: 'About', + // route level code-splitting + // this generates a separate chunk (about.[hash].js) for this route + // which is lazy-loaded when the route is visited. + component: () => import(/* webpackChunkName: "about" */ '../views/About.vue') + } +] + +const router = new VueRouter({ + routes +}) + +export default router diff --git a/vue/src/views/About.vue b/vue/src/views/About.vue new file mode 100644 index 0000000..3fa2807 --- /dev/null +++ b/vue/src/views/About.vue @@ -0,0 +1,5 @@ + diff --git a/vue/src/views/Home.vue b/vue/src/views/Home.vue new file mode 100644 index 0000000..8bd6c57 --- /dev/null +++ b/vue/src/views/Home.vue @@ -0,0 +1,18 @@ + + +