From 1bb3888cfbe831bc22476728fe9d40409b7eddb1 Mon Sep 17 00:00:00 2001 From: Vasily Kuzin Date: Sun, 7 Aug 2022 16:52:48 +0300 Subject: [PATCH] Add vue-router snippets #5 Snippets list: - vrouter - vscrollbehavior - vbeforeeach - vbeforeresolve - vaftereach - vbeforeenter - vbeforerouteenter - vbeforerouteupdate - vbeforerouteleave - vroute-named --- package.json | 8 +++ snippets/vue-router.code-snippets | 91 +++++++++++++++++++++++++++++++ 2 files changed, 99 insertions(+) create mode 100644 snippets/vue-router.code-snippets diff --git a/package.json b/package.json index ddc8327..2cd1d85 100644 --- a/package.json +++ b/package.json @@ -45,6 +45,14 @@ { "language": "typescript", "path": "./snippets/pinia.code-snippets" + }, + { + "language": "javascript", + "path": "./snippets/vue-router.code-snippets" + }, + { + "language": "typescript", + "path": "./snippets/vue-router.code-snippets" } ] } diff --git a/snippets/vue-router.code-snippets b/snippets/vue-router.code-snippets new file mode 100644 index 0000000..9f584df --- /dev/null +++ b/snippets/vue-router.code-snippets @@ -0,0 +1,91 @@ +{ + "Vue Router": { + "prefix": "vrouter", + "body": [ + "import Vue from 'vue';", + "import VueRouter from 'vue-router';", + "", + "Vue.use(VueRouter);", + "", + "export const router = new VueRouter({", + "\tbase: '/',", + "\tmode: 'history',", + "\troutes: [", + "\t\t{ path: '/path', component: component }", + "\t]", + "});" + ], + "description": "Base for Vue Router" + }, + "Vue Router scrollBehavior": { + "prefix": "vscrollbehavior", + "body": [ + "scrollBehavior(to, from, savedPosition) {", + "\tif(savedPosition) {", + "\t\treturn savedPosition;", + "\t} else {", + "\t\treturn { x: 0, y: 0 };", + "\t}", + "}," + ], + "description": "Vue Router scrollBehavior" + }, + "Vue Router beforeEach": { + "prefix": "vbeforeeach", + "body": [ + "router.beforeEach((to, from, next) => {", + "\t${1:next();}", + "});" + ], + "description": "Vue Router global guards beforeEach" + }, + "Vue Router beforeResolve": { + "prefix": "vbeforeresolve", + "body": [ + "router.beforeResolve((to, from, next) => {", + "\t${1:next();}", + "});" + ], + "description": "Vue Router global guards beforeResolve" + }, + "Vue Router afterEach": { + "prefix": "vaftereach", + "body": ["router.afterEach((to, from) => {", "\t", "});"], + "description": "Vue Router global guards afterEach" + }, + "Vue Router beforeEnter": { + "prefix": "vbeforeenter", + "body": ["beforeEnter(to, from, next) {", "\t${1:next();}", "},"], + "description": "Vue Router per-route guard beforeEnter" + }, + "Vue Router beforeRouteEnter": { + "prefix": "vbeforerouteenter", + "body": [ + "beforeRouteEnter(to, from, next) {", + "\tnext(vm => {${1:}});", + "}," + ], + "description": "Vue Router component guards beforeRouteEnter" + }, + "Vue Router beforeRouteUpdate": { + "prefix": "vbeforerouteupdate", + "body": ["beforeRouteUpdate(to, from, next) {", "\t${1:next();}", "},"], + "description": "Vue Router component guards beforeRouteUpdate" + }, + "Vue Router beforeRouteLeave": { + "prefix": "vbeforerouteleave", + "body": ["beforeRouteLeave(to, from, next) {", "\t${1:next();}", "},"], + "description": "Vue Router component guards beforeRouteLeave" + }, + "Vue Router Route": { + "prefix": "vroute-named", + "body": [ + "{", + "\tpath: '${1:pathName}',", + "\tname: '${2:routeName}',", + "\tcomponent: () => import('./${3:pathToComponent}'),", + "}," + ], + "description": "Vue Router route with per route code-splitting" + } +}