{
"vv2": {
"prefix": "vv2",
"body": [
"<template>",
"\t<div class=\"${1:component-name}\">",
"\t\t$2",
"\t</div>",
"</template>",
"",
"<script>",
"export default {",
"\tname: '${1:component-name}',",
"",
"\tdata() {",
"\t\treturn {",
"\t\t\t$3",
"\t\t}",
"\t},",
"",
"\tprops: {",
"\t\t$4",
"\t},",
"",
"\tmethods: {",
"\t\t$5",
"\t},",
"",
"\tcreated() {",
"\t\t$6",
"\t}",
"}",
"</script>",
"",
"<style lang=\"less\" scoped>",
".${1:component-name} {",
"\t$7",
"}",
"</style>"
],
"description": "Vue2 component template"
},
"vv3": {
"prefix": "vv3",
"body": [
"<template>",
"\t<div class=\"${1:component-name}\">",
"\t\t$2",
"\t</div>",
"</template>",
"",
"<script setup lang=\"ts\">",
"import { ref, onMounted } from 'vue'",
"",
"// Props",
"interface Props {",
"\t$3",
"}",
"const props = defineProps<Props>()",
"",
"// Emits",
"const emit = defineEmits<{",
"\t$4",
"}>()",
"",
"// State",
"const ${5:state} = ref()",
"",
"// Methods",
"const ${6:handleClick} = () => {",
"\t$7",
"}",
"",
"// Lifecycle",
"onMounted(() => {",
"\t$8",
"})",
"</script>",
"",
"<style lang=\"less\" scoped>",
".${1:component-name} {",
"\t$9",
"}",
"</style>"
],
"description": "Vue3 component template with script setup"
}
}