1. 程式人生 > 實用技巧 >vscode vue程式碼片段

vscode vue程式碼片段

vue2版本

{
	// Place your snippets for vue here. Each snippet is defined under a snippet name and has a prefix, body and 
	// description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
	// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders. Placeholders with the 
	// same ids are connected.
	// Example:
	// "Print to console": {
	// 	"prefix": "log",
	// 	"body": [
	// 		"console.log('$1');",
	// 		"$2"
	// 	],
	// 	"description": "Log output to console"
	// }

	"Print to console": {
        "prefix": "vue",
        "body": [
			"<!-- $1 -->",
			"<template>",
			"<div class='$2'>$5</div>",
			"</template>",
			"",
			"<script>",
			"//這裡可以匯入其他檔案(比如:元件,工具js,第三方外掛js,json檔案,圖片檔案等等)",
			"//例如:import 《元件名稱》 from '《元件路徑》';",
			"export default {",
			"  // 元件名稱",
			"  name: 'demo',",
			"  // 元件引數 接收來自父元件的資料",
			"  props: {},",
			"  // 區域性註冊的元件",
			"  components: {},",
			"  // 元件狀態值",
			"  data () {",
			"   return {}",
			"  },",
			"  // 計算屬性",
			"  computed: {},",
			"  // 偵聽器",
			"  watch: {},",
			"  // 元件方法",
			"  methods: {},",
			"  // 以下是生命週期鉤子   注:沒用到的鉤子請自行刪除",
			"  /**",
			"  * 在例項初始化之後,元件屬性計算之前,如data屬性等",
			"  */",
			"  beforeCreate () {",
			"  },",
			"  /**",
			"  * 元件例項建立完成,屬性已繫結,但DOM還未生成,$ el屬性還不存在",
			"  */",
			"  created () {",
			"  },",
			"  /**",
			"  * 在掛載開始之前被呼叫:相關的 render 函式首次被呼叫。",
			"  */",
			"  beforeMount () {",
			"  },",
			"  /**",
			"  * el 被新建立的 vm.$ el 替換,並掛載到例項上去之後呼叫該鉤子。",
			"  * 如果 root 例項掛載了一個文件內元素,當 mounted 被呼叫時 vm.$ el 也在文件內。",
			"  */",
			"  mounted () {",
			"  },",
			"  /**",
			"  * 資料更新時呼叫,發生在虛擬 DOM 重新渲染和打補丁之前。",
			"  * 你可以在這個鉤子中進一步地更改狀態,這不會觸發附加的重渲染過程。",
			"  */",
			"  beforeUpdate () {",
			"  },",
			"  /**",
			"  * 由於資料更改導致的虛擬 DOM 重新渲染和打補丁,在這之後會呼叫該鉤子。",
			"  * 當這個鉤子被呼叫時,元件 DOM 已經更新,所以你現在可以執行依賴於 DOM 的操作。",
			"  */",
			"  updated () {",
			"  },",
			"  /**",
			"  * keep-alive 元件啟用時呼叫。 僅針對keep-alive 元件有效",
			"  */",
			"  activated () {",
			"  },",
			"  /**",
			"  * keep-alive 元件停用時呼叫。 僅針對keep-alive 元件有效",
			"  */",
			"  deactivated () {",
			"  },",
			"  /**",
			"  * 例項銷燬之前呼叫。在這一步,例項仍然完全可用。",
			"  */",
			"  beforeDestroy () {",
			"  },",
			"  /**",
			"  * Vue 例項銷燬後呼叫。呼叫後,Vue 例項指示的所有東西都會解繫結,",
			"  * 所有的事件監聽器會被移除,所有的子例項也會被銷燬。",
			"  */",
			"  destroyed () {",
			"  }",
			"}",
			"</script> ",
			"",
			"<style lang='less' scoped>",
			"//@import url($3); 引入公共css類",
			"$4",
			"</style>"
        ],
        "description": "Log output to console"
    }
}

vue3版本

{
	"Print to console": {
		"prefix": "vue3",
		"body": [
			"<!-- $1 -->",
			"<template>",
			"<div class='$2'>$5</div>",
			"</template>",
			"",
			"<script>",
			"//這裡可以匯入其他檔案(比如:元件,工具js,第三方外掛js,json檔案,圖片檔案等等)",
			"//例如:import 《元件名稱》 from '《元件路徑》';",
			"",
			"export default {",
			"//import引入的元件需要注入到物件中才能使用",
			"components: {},",
			"data() {",
			"//這裡存放資料",
			"return {",
			"",
			"};",
			"},",
			"//setup替代beforeCreate和created",
			"setup(){},",
			"//監聽屬性 類似於data概念",
			"computed: {},",
			"//監控data中的資料變化",
			"watch: {},",
			"//方法集合",
			"methods: {",
			"",
			"},",
			"//生命週期 - 建立完成(可以訪問當前this例項)",
			"created() {",
			"",
			"},",
			"//生命週期 - 掛載完成(可以訪問DOM元素)",
			"onMounted() {",
			"",
			"},",
			"beforeCreate() {}, //生命週期 - 建立之前",
			"onBeforeMount() {}, //生命週期 - 掛載之前",
			"onBeforeUpdate() {}, //生命週期 - 更新之前",
			"onUpdated() {}, //生命週期 - 更新之後",
			"onBeforeDestroy() {}, //生命週期 - 銷燬之前",
			"onUnmounted() {}, //生命週期 - 銷燬完成",
			"activated() {}, //如果頁面有keep-alive快取功能,這個函式會觸發",
			"onErrorCaptured() {}, //錯誤處理",
			"}",
			"</script>",
			"<style lang='scss' scoped>",
			"//@import url($3); 引入公共css類",
			"$4",
			"</style>"
		],
		"description": "Log output to console"
	}
}