From 7252a2fe05368a110917b47b6c9773def2c69846 Mon Sep 17 00:00:00 2001 From: zgf Date: Tue, 27 Aug 2024 16:48:48 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AD=90=E7=BA=BF=E7=A8=8B=E6=9C=AC=E5=9C=B0Re?= =?UTF-8?q?source=E5=8F=82=E6=95=B0=E7=B1=BB=E5=9E=8B=E8=BD=AC=E6=8D=A2?= =?UTF-8?q?=E6=88=90number?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zgf --- CHANGELOG.md | 1 + library/src/main/ets/ImageKnifeDispatcher.ets | 42 ++++++++++++------- library/src/main/ets/model/ImageKnifeData.ets | 6 ++- 3 files changed, 32 insertions(+), 17 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b0e44f3..f912a80 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,7 @@ ## 3.1.0-rc.3 - 部分静态webp图片有delay属性导致识别成动图,改用getFrameCount识别 - 修复加载错误图后未去请求排队队列中的请求 +- 子线程本地Resource参数类型转换成number ## 3.1.0-rc.2 - 修复宽高不等svg图片显示有毛边 diff --git a/library/src/main/ets/ImageKnifeDispatcher.ets b/library/src/main/ets/ImageKnifeDispatcher.ets index b7f44c3..55e1c92 100644 --- a/library/src/main/ets/ImageKnifeDispatcher.ets +++ b/library/src/main/ets/ImageKnifeDispatcher.ets @@ -157,10 +157,21 @@ export class ImageKnifeDispatcher { isWatchProgress = true } }); - + let src: string | number = "" + let moduleName: string = "" + let resName: string = "" + if((imageSrc as Resource).id != undefined) { + moduleName = (imageSrc as Resource).moduleName + src = (imageSrc as Resource).id + if(src == -1) { + resName = (imageSrc as Resource).params![0] + } + } else if(typeof imageSrc == "string") { + src = imageSrc + } let request: RequestJobRequest = { context: currentRequest.context, - src: imageSrc, + src: src, headers: currentRequest.imageKnifeOption.headerOption, allHeaders: currentRequest.headers, componentWidth:currentRequest.componentWidth, @@ -176,7 +187,9 @@ export class ImageKnifeDispatcher { isWatchProgress: isWatchProgress, memoryKey: memoryKey, fileCacheFolder: ImageKnife.getInstance().getFileCache()?.getCacheFolder(), - isAnimator:isAnimator + isAnimator:isAnimator, + moduleName: moduleName == "" ? undefined : moduleName, + resName: resName == "" ? undefined : resName } if(request.customGetImage == undefined) { @@ -391,12 +404,12 @@ async function requestJob(request: RequestJobRequest, requestList?: List, allHeaders: Map, componentWidth: number, @@ -101,6 +101,8 @@ export interface RequestJobRequest { isWatchProgress: boolean memoryKey: string fileCacheFolder: string, - isAnimator?: boolean + isAnimator?: boolean, + moduleName?:string, + resName?: string }