vue中使用typescript配置步驟
通過(guò)前端各個(gè)框架的發(fā)展,例如vue3.0,react和angular等框架的源碼都是用ts(typescript)進(jìn)行編寫(xiě)的,因此我感覺(jué)未來(lái)的中大型項(xiàng)目的發(fā)展趨勢(shì)也離不開(kāi)ts。因此我根據(jù)一些入門(mén)教程利用vue結(jié)合ts編寫(xiě)了文檔,適合入門(mén)配置vue+ts項(xiàng)目。
1、vue老項(xiàng)目引入TypeScripe
npm install vue-class-component vue-property-decorator --save npm install ts-loader typescript tslint tslint-loader tslint-config-standard --save-dev
vue-class-component:擴(kuò)展vue支持typescript,將原有的vue語(yǔ)法通過(guò)聲明的方式來(lái)支持ts
vue-property-decorator:基于vue-class-component擴(kuò)展更多裝飾器
ts-loader:讓webpack能夠識(shí)別ts文件
tslint-loader:tslint用來(lái)約束文件編碼,可裝可不裝,建議最好安裝下,有利于代碼規(guī)范
tslint-config-standard: tslint 配置 standard風(fēng)格的約束,這個(gè)也是用來(lái)規(guī)范ts代碼風(fēng)格的
注:這種方式安裝ts是為了將原有的vue項(xiàng)目中Js語(yǔ)法修改為T(mén)s,詳細(xì)步驟參考http://m.fzitv.net/article/230703.htm此博客中對(duì)于vue.config.js或者低版本的webpack.base.conf中配置支持ts語(yǔ)法展示不太完全,因此我修改如下:
// 對(duì)于文件插件配置,需要寫(xiě)在configureWebpack這個(gè)對(duì)象中。
module.exports = {
configureWebpack: {
resolve: { extensions: [".ts", ".tsx", ".js", ".json"] },
module: {
rules: [
{
test: /\.ts$/,
exclude: /node_modules/,
enforce: 'pre',
loader: 'tslint-loader'
},
{
test: /\.tsx?$/,
loader: 'ts-loader',
exclude: /node_modules/,
options: {
appendTsSuffixTo: [/\.vue$/],
}
}
]
}
}
}
從零開(kāi)始創(chuàng)建vue+typescript項(xiàng)目
這種方式比較簡(jiǎn)單,只要在用命令vue create app-name創(chuàng)建項(xiàng)目時(shí)選擇自定義就可以創(chuàng)建,如下步驟:


第二步選中上面幾種就行,在終端中利用空格鍵進(jìn)行選中,選中之后回車,選擇項(xiàng)含義如下:
(*) Babel //ES6轉(zhuǎn)ES5 (*) TypeScript //使用ts ( ) Progressive Web App (PWA) Support //漸進(jìn)式Web應(yīng)用 (*) Router //路由 (*) Vuex //狀態(tài)管理 (*) CSS Pre-processors //CSS預(yù)處理 (*) Linter / Formatter //規(guī)范類型 ( ) Unit Testing //測(cè)試 ( ) E2E Testing //測(cè)試
下一步的配置細(xì)節(jié)如下:
Use class-style component syntax? (Y/n) 是否使用class風(fēng)格的組件語(yǔ)法 輸入Y回車 Use Babel alongside TypeScript (required for modern mode, auto-detected polyfills, trans piling JSX)? (Y/n) 是否使用Babel和TypeScript(現(xiàn)代模式、自動(dòng)檢測(cè)多邊形填充、trans所需(JSX) 輸入Y回車 Use history mode for router? (Requires proper server setup for index fallback in product ion) (Y/n) 是否使用history路由模式 輸入N回車 Pick a CSS pre-processor (PostCSS, Autoprefixer and CSS Modules are supported by default) 選擇預(yù)處理器模式 我常選擇Sass/SCSS (with node-sass) Pick a linter / formatter config: (Use arrow keys):選擇語(yǔ)法檢測(cè)規(guī)范 一般默認(rèn)第一個(gè)ESLint with error prevention only, 但是使用ts可以選擇TSLint Pick additional lint features: (Press to select, to toggle all, to invert selection) 選擇保存時(shí)檢查 / 提交時(shí)檢查 一般開(kāi)發(fā)時(shí)選擇第一個(gè)保存時(shí)檢查 Where do you prefer placing config for Babel, PostCSS, ESLint, etc.? (Use arrow keys) 選擇配置信息存放位置,單獨(dú)存放或者并入package.json 一般也是默認(rèn)選擇第一個(gè),插件配置單獨(dú)存放在一個(gè)文件 Save this as a preset for future projects? (y/N) 是否保存為預(yù)設(shè),這樣下次創(chuàng)建項(xiàng)目就不用重新選擇 輸入N回車
以上選項(xiàng)完成后項(xiàng)目就搭建成功了,項(xiàng)目目錄如下:

vue.config.js這個(gè)文件需要自己創(chuàng)建,放在項(xiàng)目根目錄下即可
到此這篇關(guān)于vue中使用typescript配置步驟的文章就介紹到這了,更多相關(guān)vue typescript配置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解vue移動(dòng)端項(xiàng)目的適配(以mint-ui為例)
這篇文章主要介紹了詳解vue移動(dòng)端項(xiàng)目的適配(以mint-ui為例),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-08-08
vue與electron實(shí)現(xiàn)進(jìn)程間的通信詳情
這篇文章主要介紹了vue與electron實(shí)現(xiàn)進(jìn)程間的通信詳情,本文主要介紹electron渲染進(jìn)程和主進(jìn)程間的通信,以及在渲染進(jìn)程和主進(jìn)程中常用的配置項(xiàng),需要的朋友可以參考一下2022-09-09
electron中使用本地?cái)?shù)據(jù)庫(kù)的方法詳解
眾所周知,electron是可以開(kāi)發(fā)桌面端的框架,那我們有一些數(shù)據(jù)不想讓別人看到,只能在自己的電腦上展示時(shí)怎么辦呢,這個(gè)時(shí)候就可以用到本地?cái)?shù)據(jù)庫(kù),本文將以sqlite3為例介紹一下electron如何使用本地?cái)?shù)據(jù)庫(kù)2023-10-10
Vue3實(shí)現(xiàn)掛載全局方法和用getCurrentInstance代替this
這篇文章主要介紹了Vue3實(shí)現(xiàn)掛載全局方法和用getCurrentInstance代替this,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-04-04
vue項(xiàng)目中使用bpmn為節(jié)點(diǎn)添加顏色的方法
這篇文章主要介紹了vue項(xiàng)目中使用bpmn為節(jié)點(diǎn)添加顏色的方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04
vue如何關(guān)閉eslint檢測(cè)(多種方法)
我們?cè)陂_(kāi)發(fā)vue項(xiàng)目的時(shí)候,創(chuàng)建的時(shí)候可能會(huì)不小心選擇了eslint,所以如果不想讓eslint檢測(cè),我們?cè)撛趺崔k呢,本文就詳細(xì)的介紹了幾種關(guān)閉方法,感興趣的可以了解一下2021-12-12
Win11&Win10配置vue開(kāi)發(fā)環(huán)境詳細(xì)圖文教程
目前前端三大框架(vue、react、angular)中vue是前端工程師經(jīng)常使用的,在使用之前需要搭建vue開(kāi)發(fā)環(huán)境,這篇文章主要給大家介紹了關(guān)于Win11&Win10配置vue開(kāi)發(fā)環(huán)境的相關(guān)資料,需要的朋友可以參考下2024-02-02
vue如何轉(zhuǎn)換時(shí)間格式為年月日時(shí)分秒和年月日(補(bǔ)零)
這篇文章主要介紹了vue如何轉(zhuǎn)換時(shí)間格式為年月日時(shí)分秒和年月日(補(bǔ)零),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-04-04

