在写微信小程序的时候遇到了一个很奇怪的问题,在原来的项目能使用的代码,新建一个项目,然后复制进去就报错了,报错部分的代码如下:
var res_tempfile=await that.TpreZip(res.tempFiles[0].tempFilePath,200,200,40)
其中Tprezip的定义如下:
TpreZip:async function(tmp_src,tmp_imgprowidth,tmp_imgproheight,tmp_imgprosize){//依次为原图地址,期待宽度,期待高度,期待大小
return new Promise<String>((resolve, reject) => {
console.log('***********图像预压缩开始*****************')
resolve(tmp_src)
reject('SomthingWrong.jpg')
})
错误提示如下:
TypeError: Promise resolver undefined is not a function
at new Promise (<anonymous>)
at _callee5$ (index.js? [sm]:108)
at s (<anonymous>:1:1588)
at Generator.<anonymous> (<anonymous>:1:2925)
at Generator.next (<anonymous>:1:1951)
at asyncGeneratorStep (<anonymous>:1:906)
at c (<anonymous>:1:1125)
at <anonymous>:1:1218
at new Promise (<anonymous>)
at hi.<anonymous> (<anonymous>:1:1065)(env: Windows,mp,1.06.2407110; lib: 3.1.5)
基础库使用的3.1.5
跪求大佬解答!
答案
终于搞定了,根据提示:
类型参数只能在 TypeScript 文件中使用
才发现,我这次创建的小程序是js的,js里写Promise构造器是不需要带返回值的类型,因此修改代码
TpreZip:async function(tmp_src,tmp_imgprowidth,tmp_imgproheight,tmp_imgprosize){//依次为原图地址,期待宽度,期待高度,期待大小
return new Promise((resolve, reject) => {
console.log('***********图像预压缩开始*****************')
resolve(tmp_src)
reject('SomthingWrong.jpg')
})
搞定!
2891

被折叠的 条评论
为什么被折叠?



