av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

vue cli4.0項(xiàng)目引入typescript的方法

瀏覽:6日期:2023-01-05 14:35:59

現(xiàn)有的項(xiàng)目是采用vue cli4.0腳手架生成的,現(xiàn)在想要引入typescript。

1.執(zhí)行安裝命令

npm install --save-dev typescriptnpm install --save-dev @vue/cli-plugin-typescript

2.根目錄下新建 tsconfig.json

{ 'compilerOptions': { 'target': 'esnext', 'module': 'esnext', 'strict': true, 'importHelpers': true, 'moduleResolution': 'node', 'experimentalDecorators': true, 'esModuleInterop': true, 'allowSyntheticDefaultImports': true, 'sourceMap': true, 'baseUrl': '.', 'allowJs': false, 'noEmit': true, 'types': ['webpack-env'], 'paths': { '@/*': ['src/*'] }, 'lib': ['esnext', 'dom', 'dom.iterable', 'scripthost'] }, 'exclude': ['node_modules']}

3.新增 shims-vue.d.ts根目錄下新建 shims-vue.d.ts,讓 ts 識(shí)別 *.vue 文件,文件內(nèi)容如下:

declare module ’*.vue’ { import Vue from ’vue’; export default Vue;}

4.修改入口文件后綴

src/main.js => src/main.ts

5.改造 .vue 文件

src/main.js => src/main.ts

加上 lang=ts 可以讓webpack識(shí)別此段代碼為 typescript

6.使用裝飾器插件

vue-class-component:強(qiáng)化 Vue 組件,使用 TypeScript裝飾器 增強(qiáng) Vue 組件,使得組件更加扁平化vue-property-decorator:在 vue-class-component 上增強(qiáng)更多的結(jié)合 Vue 特性的裝飾

Demo:

import { Vue, Component ,Watch} from ’vue-property-decorator’;@Component({ components: { Loading }})export default class App extends Vue{ old_back:object=null, transitionName:string = 'slide-right'; get ...mapState('base', ['loadingStatus']); @Watch(’$route’) onChangeValue(to:object, from:object){ // console.log(’$route’, to, from) const noBack = to.meta.noBack; // 監(jiān)聽路由變化時(shí)的狀態(tài)為前進(jìn)還是后退 // 去終節(jié)點(diǎn)左,從終節(jié)點(diǎn)過來右 if (to.meta.last) { this.transitionName = 'slide-left'; } else if (from.meta.last) { this.transitionName = 'slide-right'; } else if (from.meta.leaf) { // 從其它葉子頁面過來的,往右 this.transitionName = 'slide-right'; } else { if (noBack) { // 去到不需要返回的界面往右 this.transitionName = 'slide-right'; } else { this.transitionName = 'slide-left'; } } } @Watch(’loadingStatus’) onChangeValue(newVal: string){ if (newVal) { setTimeout(_ => { this.setLoading(false); }, 1500); } } // 彈出系統(tǒng)提示對(duì)話框 showAlert(msg:string) { plus.nativeUI.alert( msg, function() { // console.log('User pressed!'); }, '報(bào)警詳情', '確定' ); }}

到此這篇關(guān)于vue cli4.0項(xiàng)目引入typescript的文章就介紹到這了,更多相關(guān)vue cli4.0引入typescript內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 99福利网| 日本精品视频一区二区 | 成人在线视频免费看 | 一区二区三区国产 | 亚洲精品日韩在线 | 日本激情视频中文字幕 | 日韩欧美成人一区二区三区 | 国产乱码精品1区2区3区 | 久久一级大片 | 欧美日韩精品久久久免费观看 | 天堂国产| 午夜精品| 成人1区 | 欧美性久久| 一区二区三区在线免费观看 | 久久婷婷香蕉热狠狠综合 | 亚洲网址在线观看 | 91九色视频在线 | 日韩在线不卡 | 成人片免费看 | 久久最新 | 国产欧美精品 | 成人国产一区二区三区精品麻豆 | 国内精品视频在线观看 | 国产精品久久久久aaaa樱花 | 色综合久久天天综合网 | 91在线视频 | 中文字幕精品一区二区三区精品 | 91精品国产91久久久久久 | 国产极品91 | 亚洲男人天堂 | 国产精品波多野结衣 | 黄a在线观看 | 亚洲黄色av | 青青草社区 | 精品无码久久久久久国产 | 亚洲一二三区av | 99热欧美| 狠狠av| 欧美午夜久久 | 久久成人激情 |