From 940f313c8fe51ca8b3a17cc91ae76ebb4bfc30d9 Mon Sep 17 00:00:00 2001 From: dengjun Date: Wed, 6 Mar 2024 15:36:10 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E8=A7=A3=E5=86=B3=E5=AD=98=E5=9C=A8?= =?UTF-8?q?=E8=B6=85=E8=BF=8750=E8=A1=8C=E7=9A=84=E5=87=BD=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: dengjun --- interfaces/kits/picker/picker.js | 87 +++++++++++++++++--------------- 1 file changed, 47 insertions(+), 40 deletions(-) diff --git a/interfaces/kits/picker/picker.js b/interfaces/kits/picker/picker.js index 864e72ab..0b9dc6f0 100644 --- a/interfaces/kits/picker/picker.js +++ b/interfaces/kits/picker/picker.js @@ -267,26 +267,9 @@ function getDocumentPickerSelectResult(args) { return selectResult; } -async function documentPickerSelect(...args) { - let checkDocumentSelectArgsResult = checkArguments(args); - if (checkDocumentSelectArgsResult !== undefined) { - console.log('[picker] Document Select Invalid argument'); - throw checkDocumentSelectArgsResult; - } - - let documentSelectContext = undefined; +async function selectDocument(documentSelectContext, args) { let documentSelectConfig = undefined; let documentSelectResult = undefined; - - try { - documentSelectContext = getContext(this); - } catch (getContextError) { - console.error('[picker] getContext error: ' + getContextError); - throw getErr(ErrCode.CONTEXT_NO_EXIST); - } - if (documentSelectContext === undefined) { - throw getErr(ErrCode.CONTEXT_NO_EXIST); - } if (deviceInfo.deviceType === '2in1') { try { documentSelectConfig = parseDocumentPickerSelectOption(args, ACTION.SELECT_ACTION_MODAL); @@ -310,8 +293,36 @@ async function documentPickerSelect(...args) { return undefined; } } - console.log('[picker] DocumentSelect result: ' + JSON.stringify(documentSelectResult)); + return documentSelectResult; +} + +function fetchContext() { + let context = undefined; + try { + context = getContext(this); + } catch (getContextError) { + console.error('[picker] getContext error: ' + getContextError); + throw getErr(ErrCode.CONTEXT_NO_EXIST); + } + if (context === undefined) { + throw getErr(ErrCode.CONTEXT_NO_EXIST); + } + return context; +} + +async function documentPickerSelect(...args) { + let checkDocumentSelectArgsResult = checkArguments(args); + if (checkDocumentSelectArgsResult !== undefined) { + console.log('[picker] Document Select Invalid argument'); + throw checkDocumentSelectArgsResult; + } + let documentSelectContext = fetchContext(); + let documentSelectResult = await selectDocument(documentSelectContext, args); + + if (documentSelectResult == undefined) { + return undefined; + } try { const selectResult = getDocumentPickerSelectResult(documentSelectResult); if (args.length === ARGS_TWO && typeof args[ARGS_ONE] === 'function') { @@ -389,28 +400,9 @@ function getDocumentPickerSaveResult(args) { return saveResult; } -async function documentPickerSave(...args) { - let checkDocumentSaveArgsResult = checkArguments(args); - if (checkDocumentSaveArgsResult !== undefined) { - console.log('[picker] Document Save Invalid argument'); - throw checkDocumentSaveArgsResult; - } - - let documentSaveContext = undefined; +async function saveDocument(documentSaveContext, args) { let documentSaveConfig = undefined; let documentSaveResult = undefined; - - try { - documentSaveContext = getContext(this); - } catch (getContextError) { - console.error('[picker] getContext error: ' + getContextError); - throw getErr(ErrCode.CONTEXT_NO_EXIST); - } - - if (documentSaveContext === undefined) { - throw getErr(ErrCode.CONTEXT_NO_EXIST); - } - if (deviceInfo.deviceType === '2in1') { try { documentSaveConfig = parseDocumentPickerSaveOption(args, ACTION.SAVE_ACTION_MODAL); @@ -434,8 +426,23 @@ async function documentPickerSave(...args) { return undefined; } } - console.log('[picker] document save result: ' + JSON.stringify(documentSaveResult)); + return documentSaveResult; +} + +async function documentPickerSave(...args) { + let checkDocumentSaveArgsResult = checkArguments(args); + if (checkDocumentSaveArgsResult !== undefined) { + console.log('[picker] Document Save Invalid argument'); + throw checkDocumentSaveArgsResult; + } + + let documentSaveContext = fetchContext(); + let documentSaveResult = await saveDocument(documentSaveContext, args); + + if (documentSaveResult == undefined) { + return undefined; + } try { const saveResult = getDocumentPickerSaveResult(documentSaveResult); if (args.length === ARGS_TWO && typeof args[ARGS_ONE] === 'function') { -- Gitee