日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Vue3+TypeScript完整項目上手教程

一個完整的Vue3+Ts項目,支持.vue和.tsx寫法

項目地址:https://github.com/vincentzyc/vue3-demo.git

盈江網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),盈江網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為盈江上千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站制作要多少錢,請找那個售后服務(wù)好的盈江做網(wǎng)站的公司定做!

TypeScript 是JS的一個超集,主要提供了類型系統(tǒng)和對ES6的支持,使用 TypeScript 可以增加代碼的可讀性和可維護性,在 react 和 vue 社區(qū)中也越來越多人開始使用TypeScript。從最近發(fā)布的 Vue3 正式版本來看, Vue3 的源碼就是用 TypeScript 編寫的,更好的 TypeScript 支持也是這一次升級的亮點。當(dāng)然,在實際開發(fā)中如何正確擁抱 TypeScript 也是遷移至 Vue3 的一個小痛點,這里就針對 Vue3 和 TypeScript 展開一些交流。

96.8%的代碼都是TypeScript,支持的力度也是相當(dāng)大

  • Vue3入口: https://github.com/vuejs/vue-next

項目搭建

在官方倉庫的 Quickstart 中推薦用兩種方式方式來構(gòu)建我們的 SPA 項目:

  • vite
 
 
 
 
  1. npm init vite-app sail-vue3 # OR yarn create vite-app sail-vue3
  • vue-cli
 
 
 
 
  1. npm install -g @vue/cli # OR yarn global add @vue/clivue create sail-vue3# select vue 3 preset

vite 是一個由原生ESM驅(qū)動的Web開發(fā)構(gòu)建工具,打開 vite 依賴的 package.json 可以發(fā)現(xiàn)在 devDependencies 開發(fā)依賴?yán)锩嬉呀?jīng)引入了TypeScript ,甚至還有 vuex , vue-router , less , sass 這些本地開發(fā)經(jīng)常需要用到的工具。vite 輕量,開箱即用的特點,滿足了大部分開發(fā)場景的需求,作為快速啟動本地 Vue 項目來說,這是一個非常完美的工具。

后面的演示代碼也是用vite搭的

從 vue2.x 走過來的掘友肯定知道 vue-cli 這個官方腳手架, vue3 的更新怎么能少得了 vue-cli 呢, vue-cli 更強調(diào)的是用 cli 的方式進(jìn)行交互式的配置,選擇起來更加靈活可控。豐富的官方插件適配,GUI的創(chuàng)建管理界面,標(biāo)準(zhǔn)化開發(fā)流程,這些都是 vue-cli 的特點。

  • vue-cli TypeScript STEP1 

  • vue-cli TypeScript STEP2

想要預(yù)裝TypeScript,就需要選擇手動配置,并check好TypeScript

忘記使用選擇 TypeScript 也沒事,加一行cli命令就行了

 
 
 
 
  1. vue add typescript

最后,別忘了在 .vue 代碼中,給 script 標(biāo)簽加上 lang="ts"

 
 
 
 
  1.  
 
 
 
 
  1. .text-color {
  2.   color: var(--color);
  3. }
  •  tsx寫法
 
 
 
 
  1. import { ref, reactive } from "vue";
  2. import { AddressList, NavBar, Toast, Popup } from "vant";
  3. import AddressEdit from './AddressEdit'
  4. import router from '@/router'
  5. export default {
  6.   setup() {
  7.     const chosenAddressId = ref('1')
  8.     const showEdit = ref(false)
  9.     const list = reactive([
  10.       {
  11.         id: '1',
  12.         name: '張三',
  13.         tel: '13000000000',
  14.         address: '浙江省杭州市西湖區(qū)文三路 138 號東方通信大廈 7 樓 501 室',
  15.         isDefault: true,
  16.       },
  17.       {
  18.         id: '2',
  19.         name: '李四',
  20.         tel: '1310000000',
  21.         address: '浙江省杭州市拱墅區(qū)莫干山路 50 號',
  22.       },
  23.     ])
  24.     const disabledList = reactive([
  25.       {
  26.         id: '3',
  27.         name: '王五',
  28.         tel: '1320000000',
  29.         address: '浙江省杭州市濱江區(qū)江南大道 15 號',
  30.       },
  31.     ])
  32.     const onAdd = () => {
  33.       showEdit.value = true
  34.     }
  35.     const onEdit = (item: any, index: string) => {
  36.       Toast('編輯地址:' + index);
  37.     }
  38.     const onClickLeft = () => {
  39.       router.back()
  40.     }
  41.     const onClickRight = () => {
  42.       router.push('/todoList')
  43.     }
  44.     return () => {
  45.       return (
  46.         
  47.           
  48.             title="地址管理"
  49.             left-text="返回"
  50.             right-text="Todo"
  51.             left-arrow
  52.             onClick-left={onClickLeft}
  53.             onClick-right={onClickRight}
  54.           />
  55.           
  56.             vModel={chosenAddressId.value}
  57.             list={list}
  58.             disabledList={disabledList}
  59.             disabledText="以下地址超出配送范圍"
  60.             defaultTagText="默認(rèn)"
  61.             onAdd={onAdd}
  62.             onEdit={onEdit}
  63.           />
  64.           
  65.             
  66.           
  67.         
  68.       );
  69.     };
  70.   }
  71. };

結(jié)束

不知不覺, Vue 都到3的One Piece時代了, Vue3 的新特性讓擁抱 TypeScript 的姿勢更加從容優(yōu)雅, Vue 面向大型項目開發(fā)也更加有底氣了,點擊查看更多。


名稱欄目:Vue3+TypeScript完整項目上手教程
分享路徑:http://www.5511xx.com/article/dhsjego.html