vue框架中props的typescript用法詳解
什么是typescript
typescript 為 javaScript的超集,這意味著它支持所有都JavaScript都語法。它很像JavaScript都強類型版本,除此之外,它還有一些擴展的語法,如interface/module等。
typescript 在編譯期會去掉類型和特有語法,生成純粹的JavaScript。
Typescript 5年內的熱度隨時間變化的趨勢,整體呈現(xiàn)一個上升的趨勢。也說明ts越來越️受大家的關注了。
在vue中使用typescript時,需要引入vue-property-decorator
庫來兼容格式。
javascript寫法
Vue.component('blog-post', { // 在 JavaScript 中是 camelCase 的 props: ['postTitle'], template: '<h3>{{ postTitle }}</h3>' })
typescript寫法
@Prop({ type: Array, default: function(): Array<LabelData> { return []; } }) label_list: Array<LabelData> | undefined;
typescript和javascript在用法的區(qū)別,主要是需要嚴格規(guī)定label_list的類型。
但是,在vue里面,prop是不能賦初始值的。這個規(guī)則和typescript會發(fā)生矛盾,因此定義類型需要加undefined,避免typescript轉義告警。
在代碼中使用label_list時,需要用label_list as Array的語法,轉換成正常的數(shù)組格式
參考鏈接
總結
以上所述是小編給大家介紹的vue框架中props的typescript用法詳解,希望對大家有所幫助!
相關文章
vue項目中swiper輪播active圖片實現(xiàn)居中并放大
這篇文章主要介紹了vue項目中swiper輪播active圖片實現(xiàn)居中并放大方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-05-05echarts實現(xiàn)獲取datazoom的起始值(包括x軸和y軸)
這篇文章主要介紹了echarts實現(xiàn)獲取datazoom的起始值(包括x軸和y軸),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07vue3使用el-radio-group獲取表格數(shù)據(jù)無法選中問題及解決方法
這篇文章主要介紹了vue3使用el-radio-group獲取表格數(shù)據(jù)無法選中問題及解決方法,本文給大家介紹的非常詳細,需要的朋友可以參考下2024-05-05vue項目使用jszip和file-saver批量打包壓縮圖片或附件方式
這篇文章主要介紹了vue項目使用jszip和file-saver批量打包壓縮圖片或附件方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-03-03