最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

typescript編寫微信小程序創(chuàng)建項(xiàng)目的方法

 更新時(shí)間:2021年01月29日 09:27:44   作者:無聊的人_nikolas  
這篇文章主要介紹了typescript編寫微信小程序創(chuàng)建項(xiàng)目的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

創(chuàng)建項(xiàng)目

在微信開發(fā)者工具創(chuàng)建項(xiàng)目,在語言中選擇 TypeScript

改造項(xiàng)目

編輯 package.json 文件,修改 miniprogram-api-typingstypescript 版本

{
 "name": "miniprogram-ts-quickstart",
 "version": "1.0.0",
 "description": "",
 "scripts": {
 "compile": "./node_modules/typescript/bin/tsc",
 "tsc": "node ./node_modules/typescript/lib/tsc.js"
 },
 "keywords": [],
 "author": "",
 "license": "",
 "dependencies": {
 },
 "devDependencies": {
 "typescript": "^4.1.3",
 "miniprogram-api-typings": "^2.12.1-beta.0"
 }
}

編輯 tsconfig.json 文件, 修改 lib 為 ["esnext"],支持最新語法, 刪除 typeRoots 配置項(xiàng)

{
 "compilerOptions": {
 "strictNullChecks": true,
 "noImplicitAny": true,
 "module": "CommonJS",
 "target": "ES5",
 "allowJs": false,
 "experimentalDecorators": true,
 "noImplicitThis": true,
 "noImplicitReturns": true,
 "alwaysStrict": true,
 "inlineSourceMap": true,
 "inlineSources": true,
 "noFallthroughCasesInSwitch": true,
 "noUnusedLocals": true,
 "noUnusedParameters": true,
 "strict": true,
 "removeComments": true,
 "pretty": true,
 "strictPropertyInitialization": true,
 "lib": ["esnext"]
 },
 "include": [
 "./**/*.ts"
 ],
 "exclude": [
 "node_modules"
 ]
}

執(zhí)行 npm install

刪除項(xiàng)目下 typings 目錄, 的 復(fù)制 node_modules 下 miniprogram-api-typings 的 types 文件到項(xiàng)目根目錄

在 miniprogram 下創(chuàng)建 interface 目錄并創(chuàng)建 IAppOption.ts 文件,最后編輯 app.ts 文件,

// IAppOption.ts
export default interface IAppOption {
 globalData: {
  text: string;
 }
}
// app.ts
import IAppOption from "./interface/IAppOption";

App<IAppOption>({
 globalData: {
  text: "Hello,Word!"
 },
 onLaunch() {
 }
})

在 詳細(xì) -> 本地設(shè)置 -> 調(diào)試基礎(chǔ)庫,直接選擇最新的

使用 Promise 化的微信小程序api

以前可以通過 miniprogram-api-promise 這個(gè)包來完成 api Promise 化,或者自己寫

現(xiàn)在可以直接使用,比如 wx.getStorageInfo ,在 lib.wx.api.d.ts 中返回了 PromisifySuccessResult

PromisifySuccessResult 返回了Promise

getStorageInfo<TOption extends GetStorageInfoOption>(
option?: TOption
): PromisifySuccessResult<TOption, GetStorageInfoOption>

type PromisifySuccessResult<
P,
 T extends AsyncMethodOptionLike
> = P extends { success: any }
 ? void
 : P extends { fail: any }
 ? void
 : P extends { complete: any }
 ? void
 : Promise<Parameters<Exclude<T['success'], undefined>>[0]>

兩種用法,大多數(shù)api都支持

 wx.getStorageInfo({
 success: () => {
  console.log('成功執(zhí)行')
 },
 fail: () => {
  console.log('失敗執(zhí)行')
 },
 complete: () => {
  console.log('接口調(diào)用結(jié)束')
 }
})
wx.getStorageInfo().then(() => {
 console.log('成功執(zhí)行')
}).catch(() => {
 console.log('失敗執(zhí)行')
}).finally(() => {
 console.log('接口調(diào)用結(jié)束')
})

源碼: https://github.com/NikolasSky/ts-miniprogram/tree/master/ts-miniprogram-base

到此這篇關(guān)于typescript編寫微信小程序創(chuàng)建項(xiàng)目的方法的文章就介紹到這了,更多相關(guān)typescript開發(fā)微信小程序內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 不使用ajax實(shí)現(xiàn)無刷新提交表單

    不使用ajax實(shí)現(xiàn)無刷新提交表單

    這篇文章主要介紹了不使用ajax實(shí)現(xiàn)無刷新提交表單的方法,需要的朋友可以參考下
    2014-12-12
  • 前端錯(cuò)誤日志上報(bào)的超詳細(xì)解決方案

    前端錯(cuò)誤日志上報(bào)的超詳細(xì)解決方案

    這篇文章主要介紹了如何使用Node.js搭建一個(gè)簡單的錯(cuò)誤監(jiān)控平臺,用于收集和上報(bào)Vue.js項(xiàng)目的運(yùn)行錯(cuò)誤,文中通過代碼以及圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2024-11-11
  • Javascript中Null和undefined的簡單理解

    Javascript中Null和undefined的簡單理解

    在JavaScript中存在這樣兩種原始類型:Null與Undefined,這兩種類型常常會(huì)使JavaScript的開發(fā)人員產(chǎn)生疑惑,在什么時(shí)候是Null,什么時(shí)候又是Undefined,下面這篇文章主要給大家介紹了關(guān)于Javascript中Null和undefined的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • 詳談JavaScript內(nèi)存泄漏

    詳談JavaScript內(nèi)存泄漏

    文章從什么是閉包、以及閉包所涉及的作用域鏈說起,講述了JavaScript垃圾回收機(jī)制、循環(huán)引用、循環(huán)引用和閉包、IE中的內(nèi)存泄漏以及解決方法,是篇非常詳盡,非常不錯(cuò)的文章,這里推薦給大家。
    2014-11-11
  • JS實(shí)現(xiàn)select選中option觸發(fā)事件操作示例

    JS實(shí)現(xiàn)select選中option觸發(fā)事件操作示例

    這篇文章主要介紹了JS實(shí)現(xiàn)select選中option觸發(fā)事件操作,結(jié)合實(shí)例形式總結(jié)分析了javascript針對select下拉選中option項(xiàng)觸發(fā)事件相關(guān)操作技巧,需要的朋友可以參考下
    2018-07-07
  • 微信小程序定位當(dāng)前城市的方法

    微信小程序定位當(dāng)前城市的方法

    這篇文章主要為大家詳細(xì)介紹了微信小程序定位當(dāng)前城市的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • JS實(shí)現(xiàn)滾動(dòng)觸底的思路與代碼(附PC端滾動(dòng)分頁加載數(shù)據(jù))

    JS實(shí)現(xiàn)滾動(dòng)觸底的思路與代碼(附PC端滾動(dòng)分頁加載數(shù)據(jù))

    Javascript實(shí)現(xiàn)當(dāng)頁面滾動(dòng)到底部時(shí)觸發(fā)加載事件,可以通過監(jiān)聽窗口的滾動(dòng)事件,同時(shí)判斷當(dāng)前滾動(dòng)條的位置和文檔總高度來實(shí)現(xiàn)該功能,這篇文章主要給大家介紹了關(guān)于JS實(shí)現(xiàn)滾動(dòng)觸底的思路與代碼,文中還附PC端滾動(dòng)分頁加載數(shù)據(jù),需要的朋友可以參考下
    2024-06-06
  • Javascript Memoizer淺析

    Javascript Memoizer淺析

    這篇文章主要介紹了Javascript Memoizer淺析,Memoizer貌似是一種緩存方法調(diào)用結(jié)果的功能,小編也沒有太懂,需要的朋友參考下吧
    2014-10-10
  • 基于JavaScript canvas繪制貝塞爾曲線

    基于JavaScript canvas繪制貝塞爾曲線

    這篇文章主要為大家詳細(xì)介紹了基于JavaScript canvas繪制貝塞爾曲線的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • ionic 上拉菜單(ActionSheet)實(shí)例代碼

    ionic 上拉菜單(ActionSheet)實(shí)例代碼

    ionic js 上拉菜單(ActionSheet)通過往上彈出的框,來讓用戶選擇選項(xiàng);點(diǎn)擊取消按鈕或者點(diǎn)擊空白的地方來讓它消失。本文給大家分享實(shí)現(xiàn)代碼,感興趣的朋友一起看看吧
    2016-06-06

最新評論

璧山县| 观塘区| 汉阴县| 香格里拉县| 万山特区| 闵行区| 台前县| 庆元县| 潍坊市| 台湾省| 静海县| 松溪县| 中超| 郓城县| 南和县| 全椒县| 榆中县| 元阳县| 崇礼县| 贵州省| 绍兴县| 泗水县| 万年县| 商河县| 酉阳| 廊坊市| 武胜县| 陕西省| 霍城县| 柯坪县| 毕节市| 郁南县| 南昌县| 东乌珠穆沁旗| 凌源市| 双鸭山市| 玉环县| 五台县| 潞西市| 基隆市| 德安县|