From a8e8b6909a19d9cead99a2d5ef843bd4763788d2 Mon Sep 17 00:00:00 2001 From: Vasily Kuzin Date: Sun, 7 Aug 2022 13:12:21 +0300 Subject: [PATCH 1/2] Original snippets #3 - vref - vreactive - vcomputed - vwatch - vwatcheffect - vonmounted - vonbeforemount - vonbeforeupdate - vonupdated - vonerrorcaptured - vonunmounted - vonbeforeunmount --- package.json | 8 +++ snippets/vue-script.code-snippets | 101 ++++++++++++++++++++++++++++++ 2 files changed, 109 insertions(+) create mode 100644 snippets/vue-script.code-snippets diff --git a/package.json b/package.json index fa83583..f426dd6 100644 --- a/package.json +++ b/package.json @@ -29,6 +29,14 @@ { "language": "html", "path": "./snippets/vue-template.code-snippets" + }, + { + "language": "javascript", + "path": "./snippets/vue-script.code-snippets" + }, + { + "language": "typescript", + "path": "./snippets/vue-script.code-snippets" } ] } diff --git a/snippets/vue-script.code-snippets b/snippets/vue-script.code-snippets new file mode 100644 index 0000000..84a2011 --- /dev/null +++ b/snippets/vue-script.code-snippets @@ -0,0 +1,101 @@ +{ + "Vue Ref": { + "prefix": "vref", + "body": ["const ${1:name} = ref(${2:initialValue})"], + "description": "Vue Ref" + }, + "Vue Reactive": { + "prefix": "vreactive", + "body": ["const ${1:name} = reactive({", "\t${2:count}: ${3:0}", "})"], + "description": "Vue reactive" + }, + "Vue Computed": { + "prefix": "vcomputed", + "body": ["const ${1:name} = computed(() => {", "\treturn ${2}", "})"], + "description": "Vue computed" + }, + "Vue Watch": { + "prefix": "vwatch", + "body": [ + "watch(", + "\t() => ${1:name},", + "\t() => {", + "\t\t${2}", + "\t}", + ")" + ], + "description": "Vue watcher" + }, + "Vue Watch Effect": { + "prefix": "vwatcheffect", + "body": [ + "watchEffect(() => {", + "\t${1}", + "})" + ], + "description": "Vue Watch Effect" + }, + "Vue Lifecycle Hooks - onMounted": { + "prefix": "vonmounted", + "body": [ + "onMounted(() => {", + "\t${1}", + "})" + ], + "description": "Vue onMounted Lifecycle hook" + }, + "Vue Lifecycle Hooks - onBeforeMount": { + "prefix": "vonbeforemount", + "body": [ + "onBeforeMount(() => {", + "\t${1}", + "})" + ], + "description": "Vue onBeforeMount Lifecycle hook" + }, + "Vue Lifecycle Hooks - onBeforeUpdate": { + "prefix": "vonbeforeupdate", + "body": [ + "onBeforeUpdate(() => {", + "\t${1}", + "})" + ], + "description": "Vue onBeforeUpdate Lifecycle hook" + }, + "Vue Lifecycle Hooks - onUpdated": { + "prefix": "vonupdated", + "body": [ + "onUpdated(() => {", + "\t${1}", + "})" + ], + "description": "Vue onUpdated Lifecycle hook" + }, + "Vue Lifecycle Hooks - onErrorCaptured": { + "prefix": "vonerrorcaptured", + "body": [ + "onErrorCaptured(() => {", + "\t${1}", + "})" + ], + "description": "Vue onErrorCaptured Lifecycle hook" + }, + "Vue Lifecycle Hooks - onUnmounted": { + "prefix": "vonunmounted", + "body": [ + "onUnmounted(() => {", + "\t${1}", + "})" + ], + "description": "Vue onUnmounted Lifecycle hook" + }, + "Vue Lifecycle Hooks - onBeforeUnmount": { + "prefix": "vonbeforeunmount", + "body": [ + "onBeforeUnmount(() => {", + "\t${1}", + "})" + ], + "description": "Vue onBeforeUnmount Lifecycle hook" + }, +} \ No newline at end of file From 8bb1ae7ae87833bb558cafab7ab7a2fac4daf5e4 Mon Sep 17 00:00:00 2001 From: Vasily Kuzin Date: Sun, 7 Aug 2022 13:23:48 +0300 Subject: [PATCH 2/2] New snippets #3 - vdefineprops - vdefineemits - vdefineemits-nopayload - vsingleemit - vsingleemit-nopayload --- snippets/vue-script.code-snippets | 41 +++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/snippets/vue-script.code-snippets b/snippets/vue-script.code-snippets index 84a2011..cb5fb62 100644 --- a/snippets/vue-script.code-snippets +++ b/snippets/vue-script.code-snippets @@ -98,4 +98,45 @@ ], "description": "Vue onBeforeUnmount Lifecycle hook" }, + "Vue Define Props": { + "prefix": "vdefineprops", + "body": [ + "defineProps<{", + "\t${1:name}: ${2:type}", + "}>()" + ], + "description": "Vue defineProps" + }, + "Vue Define Emits": { + "prefix": "vdefineemits", + "body": [ + "defineEmits<{", + "\t(e: '${1:eventName}', ${2:payloadName}: ${3:payloadType}): void", + "}>()" + ], + "description": "Vue defineEmits" + }, + "Vue Define Emits - No Payload": { + "prefix": "vdefineemits-nopayload", + "body": [ + "defineEmits<{", + "\t(e: '${1:eventName}'): void", + "}>()" + ], + "description": "Vue defineEmits with no payload" + }, + "Vue Single Emit": { + "prefix": "vsingleemit", + "body": [ + "(e: '${1:eventName}', ${2:payloadName}: ${3:payloadType}): void", + ], + "description": "Vue single emit for defineEmits" + }, + "Vue Single Emit - No Payload": { + "prefix": "vsingleemit-nopayload", + "body": [ + "(e: '${1:eventName}'): void", + ], + "description": "Vue single emit for defineEmits with no payload" + }, } \ No newline at end of file