Vue3用户代码片段

发布时间 2023-12-04 11:42:29作者: Steven_YF

1.defineComponent语法

{
	"Print to console": {
		"prefix": "vue3",
		"body": [
			"<template>",
				"<div class=\"container\">", 
				" ",
				"</div>",
            "</template>",
            "<script>",
			" ",
            "import { defineComponent, getCurrentInstance, onMounted, onBeforeMount, reactive, toRefs } from 'vue'", 
            "export default defineComponent({",
				"name:'',",
				"props: { },",
				"emits:[],",
				"components: {", 
				" ",
				"},",
				"setup(props, ctx){",
					"const { proxy } = getCurrentInstance();",
					"const state = reactive({",
					" ",
					"})",
					"onMounted(() => {",
					" ",
					"})",
					"onBeforeMount(() => {",
					" ",
					"})",
					" ",
					"return {",
						"...toRefs(state),",
						" ",
					"}",
				"}",
			"})",
            "</script>",
            "<style scoped lang=\"scss\">", 
			" ",
            "</style>",
			" "
			],
			"description": "A vue file template"
	}
}


2.setup语法

{
	"Print to console": {
		"prefix": "v-setup",
		"body": [
		"<template>",
		"<div class=\"container\">", 
		" ",
		"</div>",
		"</template>",
		"<script setup>",
		"import { getCurrentInstance, onBeforeMount, onMounted, reactive } from 'vue'",
		"const { proxy } = getCurrentInstance();",
		"const emits = defineEmits([])",
		"const props = defineProps({",
		" ",
		"})",
		"const state = reactive({",
		" ",
		"})",

		"onBeforeMount(() => {",
		" ",
		"})",
		"onMounted(() => {",
		" ",
		"})",
		"defineExpose({ state })",
		" ",
		"</script> ",
		"<style lang=\"scss\" scoped>",
		" ",
		"</style>"
	],
	"description": "vue3"
	}
}