zhanglw
zhanglw
  • 发布:2022-11-28 16:46
  • 更新:2022-11-28 23:08
  • 阅读:337

uni-app ts 报错: api promise , pinia

分类:HBuilderX

Hbuilderx 创建的uui-app项目, HbuilderX 版本 3.6.5

根目录下:tsconfig.json
{
"compilerOptions": {
"target": "esnext",
"module": "esnext",
"strict": true,
"jsx": "preserve",
"moduleResolution": "node",
"esModuleInterop": true,
"sourceMap": true,
"skipLibCheck": true,
"importHelpers": true,
"allowSyntheticDefaultImports": true,
"useDefineForClassFields": true,
"resolveJsonModule": true,
"lib": [
"esnext",
"dom"
],
"types": [
"@dcloudio/types"
]
}
}

2022-11-28 16:46 负责人:无 分享
已邀请:
呆狗的一生

呆狗的一生 - 呆狗的一生

typescriptsetup语法来完成如下功能:

<script lang="ts" setup>  
    uni.getSystemInfo().then(res => {  
        console.log(res)  
    })  
</script>

的确会报错。应该是 uni-app@dcloudio\types\uni-app\uni.d.ts类型声明文件错误,没有考虑API Promise化的问题。其中一段声明是这样的:

getSystemInfo(options: UniNamespace.GetSystemInfoOptions): void;

于是我增加了一个重载函数声明:

getSystemInfo(): Promise<UniNamespace.GetSystemInfoResult>;

但是终端中的编译信息还是提示我Expected 1 arguments, but got 0,不知道是那里的问题了,编译不能通过!

该问题目前已经被锁定, 无法添加新回复